Java Platform, Standard Edition

from Wikipedia, the free encyclopedia

The Java Platform, Standard Edition or shortly Java SE (German "Java Platform, Standard Edition" - up to version 5.0, "Java 2 Platform, Standard Edition," J2SE [ ˌdʒeɪtuː ˌɛsiː ]) is a collection of Java - APIs . Java SE serves as the basis for both the Java Platform, Enterprise Edition (Java EE), with which applications for companies are created, and for the simpler Java Platform, Micro Edition (Java-ME) for mobile devices. The current version 14 was released in March 2020.

Version designations

The number “2” in J2SE stands for Java 2. Due to the advances in version 1.2 of Java, Sun Microsystems decided in 1998 to advertise Java versions from Java 1.2 onwards as “Java 2”, but with version 6 returned to the original version Name "Java" or "Java SE" without the following "2". The version numbers also went through several changes: For example, version 1.5.0 (published in September 2004) became “J2SE 5.0” by omitting the preceding “1”; with version 6, the “.0” at the end of the version number was also omitted.

The following table summarizes the names for the various Java versions:

Version number <1.2 1.2 .. 1.4.2 5.0 6th 7th 8th 9 10 11 12 13 14th
designation Java Java 2 (J2SE) Java 2 SE 5.0 (J2SE 5.0) Java SE 6 Java SE 7 Java SE 8 Java SE 9 Java SE 10 Java SE 11 Java SE 12 Java SE 13 Java SE 14

Full version information is available in Java technology .

Programming interfaces

The Java SE 6 API consists of:

The most basic class libraries are defined in the packages java.langand java.util, inputs and outputs in the package The most important packages and classes are briefly explained below; for more information, see the English Javadoc original documentation from Oracle .

Fundamental classes ( java.lang)

The package java.langand its sub- packages define classes that are required for the most basic mechanisms of the Java programming language.

  • The absolute base class Object from which all other classes and interfaces are derived.
  • The metaclass Class , which forms the basis for the mechanism of self-reflection ( reflection ).
  • Wrapper around basic data types such as B. Boolean, Characteror Integer.
  • The class Stringfor strings.
  • The class Systemis used to query environment variables and so-called system properties . The system properties are system properties, such as the version of the Java runtime environment. Any additional "system properties" can also be defined via the command line when calling the Java program.

The abbreviation "lang" stands for English language , so "language" because it is fundamental for the programming language.

Classes for data structures, times and internationalization ( java.util)

java.utilVarious classes are defined in the package , which are less fundamental than those java.langdefined in, but are also required for practically every Java program. The abbreviation " util" stands for utility , which means something like "useful tool".

  • A set of so-called Collectionclasses, which form a hierarchy of fully implemented data structures .
  • The class Datethat represents a point in time and the class Calendarthat can perform calendar calculations.
  • The class ResourceBundle(German "resource bundle"), which represents a lot of so-called "resources". Resources in this sense are texts, images and other objects that can be adapted for different language versions of the program. This enables programs to be developed for use in different countries without having to change the actual program code for each individual country.
  • The class Propertiesthat can read named String values ​​from a text file , among other things . These text files are called Java Properties files and are often used as a simple configuration mechanism. They are also the basis for an implementation of the resource bundle.
  • The package java.util.zipcontains classes that can create and process compressed files. It supports the ZIP and gzip formats and their compression algorithms.
  • The package java.util.jarsupports the creation and processing of Java Archives (JAR files).
  • The package java.util.regexsupports Regular expressions ( regular expressions ) for finding patterns in strings. The String class also uses this functionality, e.g. B. in a method " matches".

Classes for input and output (

The package java.iocontains classes for inputs and outputs (English input and output , hence “io”), mainly so-called streams (German “ (data) streams ”).

  • The abstract class InputStream is the base class of all input streams. These read z. B. Input from the keyboard or from a file.
  • The abstract class OutputStreamis the base class of all output streams. These write z. B. Characters on the screen or in a file.
  • The streams were introduced in the first version of Java and process bytes. The classes (German “reader”) and (German “writer”) were later introduced specifically for the input and output of Unicode characters .ReaderWriter

Other important packages

Web links


  1. Java SE14 / Java Language Updates. March 2020, accessed on July 20, 2020 (American English).