Java version history: Difference between revisions

Content deleted Content added
wording changes and remove commented out paragraph that already exists in the lead. also in my previous edit summary, i mentioned a duplicated table of contents: this applies to mobile, but another issue with the compact table of contents (at least with vector 2022) is that it doesn't scroll with you, like the regular TOC does on that skin.
remove unnecessary comment and fix typos in the lead; also fix about template to avoid redirecting to a double-redirecting disambiguation page.
Line 1:
{{Short description|List of versions of the Java programming language}}
{{About|the Java programming language||History of Java (disambiguation){{!}}History of Java}}
<!-- Bot does not like when you link directly to [[History of Java]]. See [[User:RussBot#About the hatnote task]].-->
 
The [[Java (programming language)|Java language]] has undergone several changes since [[Java Development Kit|JDK]]&nbsp;1.0 as well as numerous additions of [[class (computer science)|classes]] and packages to the standard [[library (computer science)|library]]. Since J2SE&nbsp;1.4, the evolution of the Java language has been governed by the [[Java Community Process]] (JCP), which uses ''Java Specification Requests'' (JSRs) to propose and specify additions and changes to the [[Java (software platform)|Java platform]]. The language is specified by the ''Java Language Specification'' (JLS); changes to the JLS are managed under [http://www.jcp.org/en/jsr/detail?id=901 JSR&nbsp;901]. In September 2017, Mark Reinhold, chief Architect of the Java Platform, proposed to change the release train to "one feature release every six months" rather than the then-current two-year schedule.<ref name="6monthsReinhold">{{cite web| title=Moving Java Forward Faster | last=Reinhold | first=Mark | url=https://mreinhold.org/blog/forward-faster | date=2017-09-06 | access-date=2017-09-16}}</ref><ref name="6monthsServerSide">{{cite web| title=Calling 'all aboard' on the six-month Java release train |publisher=theserverside.com | url=http://www.theserverside.com/news/450426185/Calling-all-aboard-on-the-six-month-Java-release-train | date=2017-09-12 | access-date=2017-09-16}}</ref> This proposal took effect for all following versions, and is still the current release schedule.
Line 7 ⟶ 6:
In addition to the language changes, other changes have been made to the [[Java Class Library]] over the years, which has grown from a few hundred classes in JDK&nbsp;1.0 to over three thousand in J2SE&nbsp;5. Entire new [[API]]s, such as [[Swing (Java)|Swing]] and [[Java2D]], have been introduced, and many of the original JDK&nbsp;1.0 classes and methods have been [[deprecation|deprecated]], and very few APIs have been removed (at least one, for threading, in Java 22<ref name="removed_API_in Java_22" />). Some programs allow the conversion of Java programs from one version of the [[Java (software platform)|Java platform]] to an older one (for example Java&nbsp;5.0 backported to 1.4) (see [[Java backporting tools]]).
 
Regarding Oracle's [[Java Platform, Standard Edition | Java SE]] Supportsupport Roadmaproadmap,<ref name=oracle /> versionJava SE 23 is the latest oneversion, andwhile versions 21, 17, 11 and 8 are the currently supported [[long-term support]] (LTS) versions, where Oracle Customers will receive Oracle Premier Support. Oracle continues to release no-cost public Java 8 updates for development<ref name=oracle /> and personal use indefinitely. Oracle also continues to release no-cost public Java 17&nbsp;LTS updates for all users, including commercial and production use until September 2024.<ref name="nftc">{{Cite web|url=https://blogs.oracle.com/cloud-infrastructure/post/introducing-free-java-license|title=Introducing the Free Java License
|last=Smith| first=Donald|date=}}</ref>