История языка Java
Java — объектно-ориентированный язык программирования, разработка которого началась в 1991 году в компании Sun Microsystems (проект Green под руководством Джеймса Гослинга). Первый публичный релиз — JDK 1.0 — состоялся 23 января 1996 года. За почти 30 лет язык прошёл путь от версии Oak до Java 26 (2026). Ниже — история ключевых версий и нововведений.
Таблица версий Java
| Год | Версия | Линейка | Ключевые нововведения |
|---|---|---|---|
| 1996 | JDK 1.0 | Java (ранее Oak) | Первый релиз: JVM, базовые API, AWT, апплеты |
| 1997 | JDK 1.1 | Java | JavaBeans, JDBC, внутренние классы, рефлексия |
| 1998 | J2SE 1.2 | Java 2 | Collections Framework, Swing, JIT-компилятор |
| 2000 | J2SE 1.3 | Java 2 | HotSpot JVM, JNDI |
| 2002 | J2SE 1.4 | Java 2 | assert, регулярные выражения, NIO, логирование |
| 2004 | J2SE 5.0 | Java 5 | Дженерики, аннотации, enum, varargs, for-each, autoboxing |
| 2006 | Java SE 6 | Java 6 | Улучшения коллекций (NavigableSet, NavigableMap), JAX-WS |
| 2011 | Java SE 7 | Java 7 | switch по String, try-with-resources, multi-catch, NIO.2 |
| 2014 | Java SE 8 LTS | Java 8 | Лямбда-выражения, Stream API, java.time, default-методы |
| 2017 | Java SE 9 | Java 9 | Модульная система (Project Jigsaw), JShell, private-методы интерфейсов |
| 2018 | Java SE 10 | Java 10 | Ключевое слово var (вывод типа локальных переменных) |
| 2018 | Java SE 11 LTS | Java 11 | Новый HTTP Client, var в лямбдах, удаление Java EE/CORBA |
| 2019 | Java SE 12–13 | Java 12–13 | Switch expressions (preview), text blocks (preview) |
| 2020 | Java SE 14–15 | Java 14–15 | Records (preview), pattern matching, sealed-классы (preview) |
| 2021 | Java SE 16 | Java 16 | Records и pattern matching for instanceof (стабильно) |
| 2021 | Java SE 17 LTS | Java 17 | Sealed-классы (стабильно), pattern matching for switch (preview) |
| 2022 | Java SE 18–19 | Java 18–19 | UTF-8 по умолчанию, virtual threads (preview) |
| 2023 | Java SE 20 | Java 20 | Развитие structured concurrency и record patterns |
| 2023 | Java SE 21 LTS | Java 21 | Virtual threads, pattern matching for switch и records (стабильно) |
| 2024 | Java SE 22–23 | Java 22–23 | Foreign Function & Memory API, развитие preview-фич |
| 2025 | Java SE 24 | Java 24 | Дальнейшие улучшения JVM и языка |
| 2025 | Java SE 25 LTS | Java 25 | Structured concurrency (стабильно), value-объекты (preview) |
| 2026 | Java SE 26 | Java 26 | Project Valhalla, развитие Project Panama |
JDK 1.0 — рождение Java (1996)
История языка началась в 1991 году, когда команда Sun Microsystems во главе с Джеймсом Гослингом работала над проектом Green — языком для бытовой электроники (телевизионных приставок и других устройств). Изначально язык назывался Oak, но позже был переименован в Java. Первый публичный релиз JDK 1.0 вышел в январе 1996 года. Язык создавался под влиянием C++, но с упором на простоту и безопасность.
Существует несколько версий происхождения названия. По наиболее распространённой, язык назван в честь сорта кофе Java, который, в свою очередь, назван в честь индонезийского острова Ява — поэтому на эмблеме Java изображена чашка кофе.
JDK 1.1 (1997)
В 1997 году вышла версия JDK 1.1, которая уже официально носила имя Java. Среди нововведений — компонентная модель JavaBeans, технология JDBC для работы с базами данных, внутренние классы и рефлексия.
J2SE 1.2 — эра «Java 2» (1998)
С версией 1.2 имя пакета сменилось с JDK на J2SE (Java 2 Standard Edition), а линейка стала называться Java 2. В этом релизе появился Collections Framework, библиотека Swing и JIT-компилятор. Название «Java 2» укоренилось так прочно, что во многих книгах оно сохранялось в заголовке даже при описании более поздних версий (Java 5, Java 6).
J2SE 5.0 — крупное обновление языка (2004)
С пятой версии маркетинговое название стало Java 5, а имя пакета — J2SE 5.0. С этого момента номер версии языка следует за номером пакета. Java 5 принесла множество изменений:
- перечисления (enum);
- аннотации;
- дженерики (обобщения);
- varargs;
- цикл for-each;
- autoboxing и unboxing.
Java SE 6 (2006) и Java SE 7 (2011)
В Java 6 основные изменения коснулись коллекций — появились интерфейсы NavigableSet и NavigableMap; имя пакета стало Java SE 6.
Между Java 6 и Java 7 прошло целых пять лет. Во многом это связано с тем, что в 2009 году компания Sun Microsystems, владевшая Java, была приобретена корпорацией Oracle (сделка была объявлена в 2009 году и завершена в январе 2010 года). Java 7 принесла: использование String в switch, multi-catch, try-with-resources, подчёркивания в числовых литералах и двоичные литералы.
Java SE 8 — функциональный стиль (2014)
Java 8 стала одной из важнейших версий и первой LTS-версией. В ней появились лямбда-выражения и связанные с ними ссылки на методы, функциональные интерфейсы, статические и default-методы интерфейсов, новый API даты и времени (java.time) и Stream API.
Java SE 9–10 и переход на полугодовой цикл (2017–2018)
Java 9 принесла модульную систему (Project Jigsaw), private-методы интерфейсов и инструмент JShell. В Java 10 появилось ключевое слово var. С этого момента Oracle перешла на полугодовой цикл релизов: новая версия выходит каждые шесть месяцев — в марте и сентябре.
Современная Java и LTS-версии
После перехода на быстрый цикл релизов появилось понятие LTS (Long-Term Support) — версий с длительной поддержкой, на которые ориентируется большинство компаний. Это Java 8, 11, 17, 21 и 25; начиная с Java 17, новая LTS выходит раз в два года. Промежуточные версии получают поддержку лишь полгода, поэтому в продакшене обычно используют именно LTS.
Среди ключевых возможностей современной Java: records и sealed-классы (Java 16–17), pattern matching и switch expressions, а также виртуальные потоки (virtual threads, Project Loom), ставшие стабильными в Java 21. На момент 2026 года последняя версия — Java 26, а последняя LTS — Java 25.
Часто задаваемые вопросы
Кто создал язык Java?
Java разработала команда Sun Microsystems под руководством Джеймса Гослинга в рамках проекта Green, начатого в 1991 году.
Когда вышла первая версия Java?
Первый публичный релиз — JDK 1.0 — состоялся 23 января 1996 года. Разработка же началась в 1991 году под названием Oak.
Почему язык назвали Java?
По наиболее распространённой версии — в честь сорта кофе Java, названного по индонезийскому острову Ява. Поэтому на логотипе изображена чашка кофе.
Что такое LTS-версии Java?
LTS (Long-Term Support) — версии с длительной поддержкой: Java 8, 11, 17, 21 и 25. На них ориентируется большинство компаний, так как промежуточные версии поддерживаются всего полгода.
Какая последняя версия Java?
На 2026 год последняя версия — Java 26 (вышла в марте 2026), а последняя LTS-версия — Java 25 (сентябрь 2025).
Когда Oracle купила Java?
Oracle приобрела Sun Microsystems вместе с Java: сделка была объявлена в 2009 году и завершена в январе 2010 года.
Видео объяснение
Предпочитаете видеоформат? Посмотрите этот урок с примерами и объяснениями.
Комментарии