История технических интересов — особенности версий Java

JVM Oracle

С 1995 года Java пережила более 20 лет и выпустила более десяти основных версий Узнайте о характеристиках различных версий Java, чтобы их можно было лучше использовать в повседневной разработке.

существует«История языка Java»В , мы уже знаем, что Java была анонсирована в 1995 году, но эта версия Java больше похожа на бета-версию, которая является бета-версией.

软件开发中的版本号修饰词小知识:
alpha:内部版本
beta:测试版本
rc:正式版本
lts:长期稳定版

Java 0

В 1996 году Sun выпустила первую официальную версию Java (RC-версию), JDK1.0, кодовое название версии для разработки Oak (дуб), названное в честь Дуба, предположительно в ознаменованиеДжеймс ГослингДуб возле офиса. В то время Интернет только начинался, и хотя JDK составлял всего несколько мегабайт (сейчас Java достигла более 100 мегабайт), загрузка также очень медленная из-за скорости Интернета. При этом до сих пор существует множество производителей операционных систем, использующих Java, и существуют десятки тысяч веб-страниц, созданных с использованием технологии Java, что достаточно, чтобы объяснить популярность Java в то время.

Java 1

Выпущен компанией Sun в 1997 г.JDK1.1(Его можно рассматривать как Java1) и провел конференцию JavaOne. Говорят, что количество участников в то время достигло 10 000, что было крупнейшей конференцией такого рода в то время. Ниже приведены новые функции этой версии. .

  • 1,Переписана библиотека AWT для разработки программного обеспечения для настольных ПК.(Поскольку предыдущая версия AWT была самым слабым компонентом Java, предыдущая библиотека была слишком простой, чтобы абстрагироваться от интерфейса разных операционных систем, а различные платформы были несовместимы, что также не соответствовало обещаниям «Java»напиши один раз, беги куда угодно»).

  • 2. присоединилсявнутренний класс.

  • 3. ПоддержкаJavaBeans, чтобы Java-объекты можно было сериализовать в бинарники, чтобы их было очень удобно передавать и сохранять! (JavaBeans, Java-бины, вдохновленные кофейными зернами?)

  • 4.JDBC, Так что Java можно подключить к базе данных, но база данных также должна разработать свою собственную базу данных, прежде чем они смогут управлять.

  • 5.Вызов удаленного метода RMI, собственный код вызывает метод, который не является собственным, но должен соответствовать соответствующему протоколу связи.

  • 6. ПоддержкаОтражение, которое нельзя изменить во время выполнения кода(В настоящее время функция отражения все еще очень слабая ~, друзья, которые не понимают отражения, могут прочитать эту статью.«Java Advanced — отражение»), например, информация о конфигурации в файле читается только во время выполнения кода, что повлияет на выполнение следующего кода.

  • 7. Написано для Java-разработки компанией Symantec.Своевременный компилятор(Код компилируется заранее, чтобы повысить производительность кода при его фактическом выполнении, и многие языки делают это позже).

  • 8. ПоддержкаИнтернационализация и кодировка Unicode, заложив основу для интернационализации Java.

Java 2

Выпущена компанией Sun в 1998 г.J2SE1.2(Версия больше не называется с помощью jdk), код версии Playground (в переводе здесь не игровая площадка, а арена, подразумевая, что Java собирается проделать большую работу), в следующем году (1999) Sun выпустила три версий Java за один раз, Standard Edition (J2SE, позже переименованный в JavaSE), Enterprise Edition (J2EE, позже переименованный в JavaEE), Micro Edition (J2ME, позже переименованный в JavaME), основные новые добавленные функции:

  • 1,строгое ключевое слово, что гарантирует, что вычисления с плавающей запятой будут одинаковыми на разных платформах.

  • 2,Компоненты качания, которую можно рассматривать как расширенную версию библиотеки разработки программного обеспечения AWT для настольных ПК.

  • 3, собственная разработка SunСвоевременный компилятор.

  • 4.Java plug-in, подключаемые модули, связанные с Java, например подключаемые модули браузера, поддерживающие программы Applet.

  • 5.Java IDL, который закладывает основу для взаимодействия между Java и другими языками.

  • 6.CollectionsFramework (это должно быть знакомо) сложные типы данных в Java.

Java 3

Выпущено Sun в 2000 г.J2SE1.3(можно рассматривать как Java3), кодовое название версии — Kestrel (пустельга, вид птицы), основные изменения заключаются в следующем:

  • 1. Общественность СолнцаHotSpot JVM, классическая виртуальная машина Java. JVM, безусловно, является самым большим вкладом языка Java.Некоторые новые языки (такие как Scala, Groovy, Kotlin и т. д., можно сказать, что все они являются членами семейства Java) также основаны на платформе JVM. .

  • 2. следоватьCORVAстандартные и модифицированныеRMI(Все идет по стандарту, и его легко освоить и использовать в дальнейшем).

  • 3. **Архитектура отладчика платформы Java**, платформа для отладки Java.

  • 4.JavaSound API, библиотека функций для написания обработки звука.

  • 5.Synthetic proxy, основа прокси Java (вы можете прочитать эту статью для тех, кто не понимает прокси«Java Advanced — динамический прокси»).

Java 4

Java语言的相关组织和规范(其他语言也有类似的组织):
JCP:(Java Community Process)由世界上各个为 Java 发展操心的人士组成的社区,参与定义 Java 新特性和新版本制定标准的组织(作为唯一的中国代表阿里巴巴就是 JCP 的执行委员之一,阿里的 Java,腾讯的 C++ 都不是吹的)。
JSR:(Java Specification Requests)Java 语言规范请求文档,你可以对 Java 提出新的要求,然后 Java 相关的组织投票决定是否通过,通过后就将这个要求写入 JSR 中,并且最终给出一个开源的实现。
JEP:(Java Enhancement Proposal),Java 增强建议,收集大家对于 JDK 的建议,起草增强 Java 哪些功能的方案,为 JDK 新版本发布及相关工作指定路线。

В 2002 году Sun выпустила J2SE1.4 (которую можно рассматривать как Java4), разработанную в соответствии со стандартом JCP (Java Community Process), кодовое имя версии Merlin (мерлин, также разновидность птицы), эту версию можно назвать тенденция логотипа Java Mature, основные новые функции заключаются в следующем:

  • 1. Поддержкарегулярное выражение.

  • 2,assertКлючевые слова, используемые для написания тестового кода.

  • 3.цепочка исключений, низкоуровневое исключение упаковывается, а затем выбрасывается, что также удобно для отладки разработчиками.

  • 4. Сеть поддержкиIPV6стандарт.

  • 5.NIO, неблокирующий ввод-вывод, оптимизированный для чтения ввода-вывода Java.

  • 6.API ведения журналов.

  • 7.Анализатор XML и преобразователь XSLT.

  • 8,Интегрированные расширения безопасности и шифрования(JCE, JSSE, JAAS).

  • 9,Технология веб-запуска Java, запустите платформу Java прямо из браузера (немного зависает ~).

  • 10.Preference API, под пакетом java.util.prefs (параметр предпочтения в настройках программного обеспечения, вы, должно быть, видели его, китайский перевод является предпочтением, пользовательские настройки программного обеспечения будут сохранены, этот API должен сделать это).

Java 5

Выпущено Sun в 2004 г.J2SE5(Да, Sun снова сменила название), версия под кодовым названием Tiger, новые возможности языка Java в этой версии следующие:

  • 1,Дженерики.

  • 2,Metadata, метаданные, данные, которые описывают данные.

  • 3.Автоматическая упаковка и распаковка, то есть базовые типы данных (такие как int) и их типы-оболочки (такие как Integer) автоматически преобразуются для вас (на самом деле за преобразованием для вас стоят связанные методы).

  • 4.перечислить.

  • 5.переменный параметр, функция может передавать переменное количество значений параметров.

  • 6.Улучшенный цикл for.

  • 7.Улучшенная модель памяти Java., который предоставляет пакет java.util.concurrent.

Java 6

Выпущено Sun в 2006 г.JavaSE6(Не жалуйтесь на смену имени снова, потому что Сана скоро не увидишь), версия под кодовым названием Mustang (Мустанг), тоже классическая версия, и многие до сих пор в ней сидят.Напишите(Чтобы пошутить, подавляющее большинство пользователей Java8 теперь используют Java8 для написания кода Java 6, на самом деле, я тоже, escape~), основные изменения в этой версии Java заключаются в следующем:

  • 1. Обеспечитьдинамический языкслужба поддержки.

  • 2. ОбеспечитьСкомпилируйте API, то есть программа Java может вызывать API компилятора Java.

  • 3.Некоторые улучшения в библиотеке Swing.

  • 4.JVM-оптимизация.

  • 5.API мини HTTP-сервераЖдать.

Эта версия Java больше связана с оптимизацией функций предыдущей версии, повышением удобства использования пользователями и исправлением некоторых ошибок, поэтому до сих пор используется много проектов (обновление версии Java, используемой проектом, может иметь неожиданные проблемы, поэтому оставьте все как есть, брат по эксплуатации и обслуживанию ускользнет~).

Java 7

В 2001 году, когда Oracle приобрела Sun (после 2009 года Java принадлежит Oracle), Oracle выпустилаJavaSE7, новые функции выглядят следующим образом:

1. Расслабьте использование переключателя, мыСтроки можно использовать в переключателеНу, до этой версии можно было использовать только символы и цифры.

2,попробуйте-ресурс-с оператором, чтобы помочь нам автоматически управлять ресурсами, такими как открытие файла.После завершения операции с файлом JVM может автоматически закрыть файловый ресурс для нас, конечно, при условии, что вы используете оператор try-resource-with.

3. присоединилсявывод типафункция, например, когда вы использовали универсальные типы в предыдущих версияхArrayList<User> userList= new ArrayList<User>();, эту версию просто нужно написатьArrayList<User> userList= new ArrayList<>();, то есть тип в угловых скобках за ним, JVM помогает нам завершить автоматическое определение типа.

4.Упрощенное использование переменных параметров.

5. Поддержкадвоичное целое, При разработке аппаратного обеспечения для удобства просмотра чаще используются двоичные числа.

6. Поддержкаподчеркнутое значение,Такие какint a = 100000000;, 0 слишком много для чтения, эта версия поддерживает запись в таком видеint a = 100_000_000, так что вы можете сразу увидеть значение.

7.Обработка исключений поддерживает несколько операторов catch.

8,Некоторые улучшения в библиотеке NIO, добавляет поддержку нескольких файлов, файловых необработанных данных и символических ссылок.

9. Другие (больше дальшеоптимизация). . .

Java 8

2014 год,JavaSE8Выпущенная версия включает в себя некоторые функции, которые изначально планировалось добавить в JavaSE7, но были отложены из-за нехватки времени.

1,Лямбда-выражения, упростить код (об этом будет написано в статье позже).

2,Улучшения аннотаций.

3.Новый API времени и даты, библиотека времени и даты Java была признана одним из самых сложных API для использования ранее, поэтому в этой версии она улучшена.

4.JavaFX, технология, используемая в разработке настольных компьютеров (также конкурирующая с другими компаниями, давайте подождем и посмотрим).

5.Статически связывать библиотеки JNI(Студенты, которые занимаются разработкой Android, должны быть знакомы с этим).

6. Другие. . .

Java 9

В 2017 году Oracle выпустилаJavaSE9(Функции этой версии обсуждались еще на конференции JavaOne в 2011 году), эта версия все еще обновляется, и в ней кратко представлены некоторые новые функции.

1,модульный(Этому также можно научиться из других языков, таких как JavaScript).

2,Java Shell(Этому также научились из других языков, таких как Python. До этого некоторые люди всегда говорили, что Java слишком хлопотна. Чтобы написать Hello Word, вы должны создать новый класс. Иногда неудобно тестировать несколько строк. После запуска Java Shell разработчикам Java не нужно завидовать Shell других языков, вы можете написать Hello Word Java, как показано на рисунке ниже (у меня Java 6, 7, 8, 9, 10 установлен на моем компьютере, готов собрать семь версий для вызова Java Shenlong, txtx~).

3.Усовершенствования своевременной компиляции.

4.XML Catalogs, XML-файл проверяется автоматически.

5. Некоторые функции находятся в стадии разработки. . .

JavaShell.png

Что касается Java10 и Java11, я не буду здесь говорить об этом, ведь Java9 еще не разработана (ленитесь~).

Из версии Java развития выше, вы можете увидеть процесс постепенного роста Java, Java также учиться на других языках. До сих пор Java все еще имеет сильную жизненную силу, те, кто защищает Java, определенно являются мертвыми скрытыми мотивами (здесь нет имени в определенных учебных заведениях), и некоторые беспокоятся о будущем Java, чтобы узнать, может быть больше, чем Oracle JDK one, OpenJDK с открытым исходным кодом (сам разработчик Oracle JDK сказал, что код OpenJDK в основном является исходным кодом Oracle JDK) и других производителей, свободных от JDK, можно использовать, так что не стоит беспокоиться, будущее Java яркое.

Перефразируя то, что Чоу Юнь-Фат сказал Джею Чоу в «Город полон золотых доспехов»,Что я даю тебе на Яве, то твое, я не даю тебе на Яве, ты не можешь грабить.

—— Эта статья перенесена из моего публичного аккаунта WeChat «Programming Mind».