Java Platform, Standard Edition
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:
- lang & util Base Libraries (see below)
- Higher base libraries ( I / O , JNI , serialization , ...)
- User Interface Toolkits ( AWT , Swing , Java 2D)
- Integration libraries ( IDL , JDBC , JNDI , RMI , RMI- IIOP )
The most basic class libraries are defined in the packages java.lang
and java.util
, inputs and outputs in the package java.io
. 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.lang
and 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
,Character
orInteger
. - The class
String
for strings. - The class
System
is 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.util
Various classes are defined in the package , which are less fundamental than those java.lang
defined 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
Collection
classes, which form a hierarchy of fully implemented data structures . - The class
Date
that represents a point in time and the classCalendar
that 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
Properties
that 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.zip
contains classes that can create and process compressed files. It supports the ZIP and gzip formats and their compression algorithms. - The package
java.util.jar
supports the creation and processing of Java Archives (JAR files). - The package
java.util.regex
supports 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 ( java.io
)
The package java.io
contains 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
OutputStream
is 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 .
Reader
Writer
Other important packages
- java.awt - Abstract Window Toolkit , graphic output and use of graphic user interfaces
- java.nio - extended functions for input and output, enable more powerful implementation
- java.net - urls , sockets, and other classes for accessing computer networks
- java.rmi - Remote Method Invocation for remote method calls
- java.text - formatting of dates, numbers and others
- java.math - integers and fixed-point numbers with unlimited precision
- javax.net - contains an abstract factory for creating specialized sockets
- javax.naming - JNDI access to naming services
- javax.print - output to printer
- javax.swing - Swing , extended GUI components
- javax.xml.bind - XML binding using JAXB
- javax.xml.stream - Streaming API for XML , pull parser for XML
- javax.xml.xpath - Processing of XPath expressions
- org.w3c.dom - Document Object Model for the representation of XML documents as an object tree
Web links
- General information about Java SE
- The API documentation for Java SE 6
- The API documentation for Java SE 7
- The API documentation for Java SE 8
- The API documentation for Java SE 9
- The API documentation for Java SE 10
- The API documentation for Java SE 11
- The API documentation for Java SE 12
swell
- ↑ Java SE14 / Java Language Updates. March 2020, accessed on July 20, 2020 (American English).