Java SE- 12- Increment, Decrement and Shorthand assignments

  • 7 years ago
Java Platform, Standard Edition or Java SE is a widely used computing platform for development and deployment of portable code for desktop and server environments.[1] Java SE was formerly known as Java 2 Platform, Standard Edition or J2SE.

The platform uses the object-oriented Java programming language. It is part of the Java software-platform family. Java SE defines a wide range of general-purpose APIs—such as Java APIs for the Java Class Library—and also includes the Java Language Specification and the Java Virtual Machine Specification.[2] One of the most well-known[citation needed] implementations of Java SE is Oracle Corporation's Java Development Kit (JDK).[3]
Nomenclature, standards and specifications[edit]
The platform was known as Java 2 Platform, Standard Edition or J2SE from version 1.2, until the name was changed to Java Platform, Standard Edition or Java SE in version 1.5. The "SE" is used to distinguish the base platform from the Enterprise Edition (Java EE) and Micro Edition (Java ME) platforms. The "2" was originally intended to emphasize the major changes introduced in version 1.2, but was removed in version 1.6. The naming convention has been changed several times over the Java version history. Starting with J2SE 1.4 (Merlin), Java SE has been developed under the Java Community Process, which produces descriptions of proposed and final specifications for the Java platform called Java Specification Requests (JSR).[4] JSR 59 was the umbrella specification for J2SE 1.4 and JSR 176 specified J2SE 5.0 (Tiger). Java SE 6 (Mustang) was released under JSR 270.

Java Platform, Enterprise Edition (Java EE) is a related specification that includes all the classes in Java SE, plus a number that are more useful to programs that run on servers as opposed to workstations.

Java Platform, Micro Edition (Java ME) is a related specification intended to provide a certified collection of Java APIs for the development of software for small, resource-constrained devices such as cell phones, PDAs and set-top boxes.

The Java Runtime Environment (JRE) and Java Development Kit (JDK) are the actual files downloaded and installed on a computer to run or develop Java programs, respectively.

General purpose packages[edit]
java.lang[edit]
The Java package java.lang contains fundamental classes and interfaces closely tied to the language and runtime system. This includes the root classes that form the class hierarchy, types tied to the language definition, basic exceptions, math functions, threading, security functions, as well as some information on the underlying native system. This package contains 22 of 32 Error classes provided in JDK 6.

The main classes and interfaces in java.lang are:

Object – the class that is the root of every class hierarchy.
Enum – the base class for enumeration classes (as of J2SE 5.0).
Class – the class that is the root of the Java reflection system.
Throwable – the class that is the base class of the exception class hierarchy.
Error , Exception , and RuntimeException – the base classes for each exception type.
Thread – the class that allows operations on threads.
String – the class for strings and string literals.
StringBuffer and StringBuilder – classes for performing string manipulation (StringBuilder as of J2SE 5.0).
Comparable – the interface that allows generic comparison and ordering of objects (as of J2SE 1.2).
Iterable – the interface that allows generic iteration using the enhanced for loop (as of J2SE 5.0).
ClassLoader , Process , Runtime , SecurityManager , and System – classes that provide "system operations" that manage the dynamic loading of classes, creation of external processes, host environment inquiries such as the time of day, and enforcement of security policies.
Math and StrictMath – classes that provide basic math functions such as sine, cosine, and square root (StrictMath as of J2SE 1.3).
The primitive wrapper classes that encapsulate primitive types as objects.
The basic exception classes thrown for language-level and other common exceptions.
Classes in java.lang are automatically imported into every source file.

java.lang.ref[edit]
The java.lang.ref package provides more flexible types of references than are otherwise available, permitting limited interaction between the application and the Java Virtual Machine (JVM) garbage collector. It is an important package, central enough to the language for the language designers to give it a name that starts with "java.lang", but it is somewhat special-purpose and not used by a lot of developers. This package was added in J2SE 1.2.

Java has an expressive system of references and allows for special behavior for garbage collection. A normal reference in Java is known as a "strong reference." The java.lang.ref package defines three other types of references—soft, weak, and phantom references. Each type of reference is designed for a specific use.