Java is a programming language and core component of Sun Microsystems' Java platform. It derives much of its syntax from C and C++ but has a simple object model and less low-level facilities. Java applications are compiled to bytecode instead of machine code. This bytecode can run on any Java Virtual Machine (JVM) regardless of platform. Java is platform independent language. Java is considered as one of the most influential programming languages of the 20th century, and widely used in development of application software to web applications.
Principles:
- It should be "simple, object oriented and familiar".
- It should be "robust and secure".
- It should be "architecture neutral and portable".
- It should execute with "high performance".
- It should be "interpreted, threaded, and dynamic".
End-users normally use a Java Runtime Environment (JRE) installed on their own system for Java applications, or in a Web browser for Java applets. One main characteristic of Java is portability, which means that applications written in the Java run similarly on any supported hardware/operating-system platform. Java uses an automatic garbage collector to manage memory in the object lifecycle.
There are four editions of Java targeting different application environments. Java APIs are segmented so that they belong to one of the platforms. The platforms are:
- Java Card for smartcards.
- Java Platform, Micro Edition (Java ME) targeting environments with limited resources.
- Java Platform, Standard Edition (Java SE) targeting workstation environments.
- Java Platform, Enterprise Edition (Java EE)