Java SE: відмінності між версіями
[неперевірена версія] | [неперевірена версія] |
Вилучено вміст Додано вміст
Виправлено джерел: 1; позначено як недійсні: 0.) #IABot (v2.0.8.6 |
Функція пропозицій посилань: додано 3 посилання. Мітки: Візуальний редактор Редагування з мобільного пристрою Редагування через мобільну версію Завдання новачку Пропоноване: додати посилання |
||
(Не показані 8 проміжних версій 5 користувачів) | |||
Рядок 1:
'''Java Platform, Standard Edition''' ('''Java SE''') є [[Комп'ютерна платформа|обчислювальною платформою]] для розробки та розгортання [[Портування|портативного коду]] для [[Настільний комп'ютер|десктопів]] і [[сервер]]ів.<ref>{{Cite web|url=http://www.oracle.com/technetwork/java/javase/overview/index.html|title=Java SE Overview|accessdate=26 лютого 2017|publisher=[[Oracle Corporation]]|archive-date=24 грудня 2014|archive-url=https://web.archive.org/web/20141224184532/http://www.oracle.com/technetwork/java/javase/overview/index.html}}</ref> Java SE раніше називалася '''платформою Java 2, стандартною версією''' ('''J2SE''').
Платформа використовує мову програмування [[Java]] і є частиною сімейства
== Номенклатура, стандарти та специфікації ==
Платформа була відома як ''платформа Java 2, Standard Edition'' або ''J2SE'' з версії 1.2, доки ім'я не було змінено на ''Java Platform, Standard Edition'' або ''Java SE'' у версії 1.5. «SE» використовується для розрізнення базової платформи від платформ Enterprise Edition ([[Java EE]]) і Micro Edition ([[Java Platform, Micro Edition|Java ME]]). «2» спочатку мав наголосити на основних змінах, введених у версії 1.2, але був видалений у версії 1.6. Угода про іменування змінювалася кілька разів за [[Історія версій Java|історію версій Java]]. Починаючи з J2SE 1.4 (Merlin), Java SE була розроблена в рамках [[Java Community Process]], яка виробляє описи запропонованих і остаточних специфікацій для платформи [[Java Community Process|Java]] під назвою [[Java Community Process|Java Specification Requests (JSR)]].<ref>{{Cite web|url=https://jcp.org/en/jsr/overview|title=Java Specification Requests Overview|accessdate=1 січня 2013|publisher=[[Oracle Corporation]] and/or its affiliates|archive-date=15 грудня 2012|archive-url=https://web.archive.org/web/20121215060236/http://jcp.org/en/jsr/overview}}</ref> JSR 59 була парасолькою для J2SE 1.4 і JSR 176, вказувала J2SE 5.0 (Tiger). Java SE 6 (Mustang) був випущений під JSR 270.
[[Java EE|Платформа Java, Enterprise Edition]] (Java EE) — це специфікація, що включає всі [[Клас (програмування)|класи]] Java SE, а також число, яке є більш корисним для програм, які працюють на [[Сервер|серверах,]] а не [[Робоча станція|робочих станцій]] .
Рядок 28:
* <code>[https://docs.oracle.com/en/java/javase/12/docs/api/java.base/java/lang/StringBuffer.html StringBuffer]</code> і <code>[https://docs.oracle.com/en/java/javase/12/docs/api/java.base/java/lang/StringBuilder.html StringBuilder]</code> — класи для виконання [[Рядок (програмування)|маніпулювання рядками]] (<code>StringBuilder</code> у J2SE 5.0).
* <code>[https://docs.oracle.com/en/java/javase/12/docs/api/java.base/java/lang/Comparable.html Comparable]</code> — інтерфейс, що дозволяє узагальнювати порівняння та упорядкування об'єктів (як у J2SE 1.2).
* <code>[https://docs.oracle.com/en/java/javase/12/docs/api/java.base/java/lang/Iterable.html Iterable]</code> — інтерфейс, що дозволяє загальну ітерацію з використанням
* <code>[https://docs.oracle.com/en/java/javase/12/docs/api/java.base/java/lang/ClassLoader.html ClassLoader]</code>, <code>[https://docs.oracle.com/en/java/javase/12/docs/api/java.base/java/lang/Process.html Process]</code>, <code>[https://docs.oracle.com/en/java/javase/12/docs/api/java.base/java/lang/Runtime.html Runtime]</code>, <code>[https://docs.oracle.com/en/java/javase/12/docs/api/java.base/java/lang/SecurityManager.html SecurityManager]</code> і <code>[https://docs.oracle.com/en/java/javase/12/docs/api/java.base/java/lang/System.html System]</code> — класи, які забезпечують «системні операції», які керують {{Не перекладено|Динамічне завантаження|динамічним завантаженням|en|Dynamic loading}} класів, створенням зовнішніх [[Процес (інформатика)|процесів]], запитами хост-середовища, такими як час доби, і виконання {{Не перекладено|Політика безпеки|політики безпеки|en|Security policy}} .
* <code>[https://docs.oracle.com/en/java/javase/12/docs/api/java.base/java/lang/Math.html Math]</code> і <code>[https://docs.oracle.com/en/java/javase/12/docs/api/java.base/java/lang/StrictMath.html StrictMath]</code> — класи, які забезпечують основні математичні функції, такі як [[синус]], [[Тригонометричні функції|косинус]] і [[квадратний корінь]] (<code>StrictMath</code> як J2SE 1.3).
* {{Не перекладено|Класи обгортки примітивів|Класи обгортки примітивів|en|Primitive wrapper class}} які [[Інкапсуляція (програмування)|інкапсулюють]]
* Основні класи виключення, викинуті для рівня мови та інших загальних винятків.
Рядок 42:
* <code>[https://docs.oracle.com/en/java/javase/12/docs/api/java.base/java/lang/ref/SoftReference.html SoftReference]</code> може використовуватися для реалізації [[Кеш|кешу]]. Об'єкт, який не може бути досягнутий сильним посиланням (тобто не є сильно досяжним), але на нього посилається м'яка посилання, називається «м'яко досяжним». Тендітний об'єкт може бути сміттям, зібраним на розсуд збирача сміття. Це зазвичай означає, що м'якодоступні об'єкти є тільки сміттям, яке збирається, коли вільна пам'ять низька, але знову ж таки, це на розсуд збирача сміття. Семантично, м'яка посилання означає, «Зберегти цей об'єкт, коли ніщо інше не посилається на нього, якщо тільки пам'ять не потрібна».
* <code>[https://docs.oracle.com/en/java/javase/12/docs/api/java.base/java/lang/ref/WeakReference.html WeakReference]</code> використовується для реалізації слабких карт. Об'єкт, який не є сильно або м'яко доступним, але на нього посилається слабка посилання, називається «{{Не перекладено|Недосяжна пам'ять|слабодосяжна|en|Unreachable memory}}». Слабкодоступний об'єкт — це сміття, зібране в наступному циклі збору. Така поведінка використовується в класі [https://docs.oracle.com/en/java/javase/12/docs/api/java.base/java/util/WeakHashMap.html <code>java.util.WeakHashMap</code>].
* <code>[https://docs.oracle.com/en/java/javase/12/docs/api/java.base/java/lang/ref/PhantomReference.html PhantomReference]</code> використовується для посилання на об'єкти, які були позначені для збору сміття і були [[Фіналізатор|завершені]], але ще не були відновлені. Об'єкт, який не є сильно, м'яко або слабкодоступним, але на нього посилається фантомне посилання, називається «phantom reachable». Це дає можливість більш гнучкого очищення, ніж це можливо тільки за допомогою механізму завершення. Семантично, фантомна посилання означає «цей об'єкт більше не потрібний і був завершений під час підготовки до збирання».
Рядок 89:
=== java.io ===
Пакет java.io містить класи, що підтримують [[Ввід/вивід|введення та виведення даних]] . Класи в пакеті в першу чергу [[Потік (програмування)|орієнтовані на потік]]; однак, клас для [[Файл|файлів]]
==== Потоки ====
Рядок 95:
* джерело / призначення потокових даних
* [[тип даних]], записаних на / з потоку
* додаткову обробку або фільтрацію виконують на потокових даних
Рядок 198:
=== java.text ===
Пакет java.text впроваджує java.text розбору для рядків і підтримує різні мови, що читаються людиною, і [[синтаксичний аналіз]].
=== java.util ===
Рядок 206:
=== java.applet ===
Створений для підтримки створення Java-аплетів, пакет java.applet дозволяє програмам завантажуватися через мережу і запускатися в java.applet пісочниці. Обмеження безпеки легко накладаються на пісочницю. Розробник, наприклад, може застосувати [[Електронний цифровий підпис|цифровий підпис]] до аплету, тим самим позначаючи його як безпечний. Це дозволяє користувачеві надавати дозвіл аплету на виконання обмежених операцій (наприклад, доступ до локальних [[Жорсткий диск|жорстких дисків]]), а також видаляє деякі або всі обмеження пісочниці. Цифрові сертифікати видаються органами [[Акредитований центр сертифікації ключів|сертифікації]].
=== java.beans ===
Рядок 228:
Пакет <code>javax.rmi</code> надає підтримку віддаленого зв'язку між додатками, використовуючи протокол RMI через IIOP. Цей протокол поєднує функції RMI і CORBA.
[http://java.sun.com/javase/technologies/core/corba/index.jsp Основні технології Java SE — CORBA / RMI-IIOP] {{Webarchive|url=https://web.archive.org/web/20120605114346/http://java.sun.com/javase/technologies/core/corba/index.jsp |date=5 червня 2012 }}
=== javax.swing ===
Рядок 236:
=== javax.swing.text.html.parser ===
Пакет <code>javax.swing.text.html.parser</code> надає HTML-синтаксичний аналізатор, javax.swing.text.html.parser помилки, який використовується для написання різних
=== javax.xml.bind.annotation ===
Рядок 252:
== Безпека ==
Було повідомлено про декілька критичних уразливостей безпеки, найостанніші у січні 2013 року.<ref>[http://www.h-online.com/security/news/item/Dangerous-vulnerability-in-latest-Java-version-1781156.html Dangerous vulnerability in latest Java version] {{Webarchive|url=https://web.archive.org/web/20181014112616/http://www.h-online.com/security/news/item/Dangerous-vulnerability-in-latest-Java-version-1781156.html |date=14 жовтня 2018 }} The H Security, Jan. 10, 2013</ref><ref>{{Cite web|url=http://blogs.computerworld.com/malware-and-vulnerabilities/21056/another-critical-java-vulnerability-puts-1-billion-users-risk|title=Another critical Java vulnerability puts 1 billion users at risk|website=[[Computerworld]] Security Blog|date=25 вересня 2012|last=Darlene Storm|accessdate=травень 20, 2019|archiveurl=https://web.archive.org/web/20130113172354/http://blogs.computerworld.com/malware-and-vulnerabilities/21056/another-critical-java-vulnerability-puts-1-billion-users-risk|archivedate=січень 13, 2013|deadurl=yes}}</ref> Оповіщення безпеки від Oracle оголошують про критичні для системи безпеки виправлення для Java SE.<ref>{{Cite web|url=http://www.oracle.com/technetwork/topics/security/alerts-086861.html|publisher=Oracle|title=Critical Patch Updates, Security Alerts and Third Party Bulletin|accessdate=20 травня 2019|archive-date=6 жовтня 2019|archive-url=https://web.archive.org/web/20191006100516/https://www.oracle.com/technetwork/topics/security/alerts-086861.html}}</ref> {{Reflist|30em}}
== Посилання ==
* [https://www.oracle.com/technetwork/java/javase/overview/index.html Java SE в Oracle Technology Network] {{Webarchive|url=https://web.archive.org/web/20141224184532/http://www.oracle.com/technetwork/java/javase/overview/index.html |date=24 грудня 2014 }}
* [http://wisentechnologies.com/it-courses/java-training.aspx Навчання Java] {{Webarchive|url=https://web.archive.org/web/20190518154426/http://wisentechnologies.com/it-courses/java-training.aspx |date=18 травня 2019 }}
* Java SE 10 API Javadocs
* [https://java.sun.com/reference/api/index.html Документація Java SE API] {{Webarchive|url=https://web.archive.org/web/20120808041031/https://java.sun.com/reference/api/index.html |date=8 серпня 2012 }}
* [https://www.jcp.org/en/jsr/detail?id=270 JSR 270] {{Webarchive|url=https://web.archive.org/web/20210125121053/https://www.jcp.org/en/jsr/detail?id=270 |date=25 січня 2021 }} (Java SE 6)
* [https://web.archive.org/web/20140829134921/https://jdk8.java.net/ 1.8]
* [https://web.archive.org/web/20140903094835/https://jdk7.java.net/ 1.7]
|