What is Java ?
- Java is an object oriented programming language as well as a platform.
- It was developed by James Gosling in 1995 at Sun Microsystems now Oracle.
- It is a platform independent programming language.
- The cross-platform compatibility is also known as “Write Once, Run Anywhere (WORA)”
Platform is referred to as any hardware or software environment in which a program runs.
Why Java become so popular ?
- Object Oriented Programming
- WORA( Write Once Run any where) or Platform Independence
- Java Provides development and deployment environment
- It is similar in syntax to C++
- It is robust provides exception handling , automatic garbage collection.
- Designed for the distributed environment
- Supports Multi-threading
- Secure because of Byte Code Verifier and absence of pointer
- Architectural Neutral
- Open Source
- High Performance (JITc)
Where Java is used?
Java is a powerful programming language which is coming with new features day by day. Java technology goes everywhere you go. According to Sun, more than 3 billion devices across the world run java. The role of java
is much more in the following areas:
- Java is used in toys, cars, planes, rockets.
- Consumer and embeded devices such as smart cards, ATMs, thin clients, PCs, and servers.
- It is also used in Enterprise Applications such as Banking and Finance Applications.
- Used in real time graphics to television, instant imaging to cameras and multi-player games to mobile phones,etc.
- Java secures the vast majority of electronic transactions in retail, finance, government, medicine, etc.
- Used in Desktop Applications such as media player, acrobat reader,etc.
- Used for Scientific purposes.
- Used in Robotics.
Types of Java Applications
There are mainly 4 types of java applications. They are:
- Standalone Application
- Web Application
- Enterprise Application
- Mobile Application
1.) Standalone Application:
Standalone application is also known as Desktop application or Window based application. Standalone application is made with the help of AWT and SWING in java.
These applications are installed on users or client’s machine. Example:- antivirus, media player, ms-office, etc.
2.) Web Application:
Web Application are those applications that run on server side and creates dynamic web page or response according to the request made by the browser is called as Web application.
Web application can be achieved through Servlet, JSP, Struts, JSF, etc.
3.) Enterprise Application:
Enterprise simply means a company or firm which is having multiple locations. Thus, Enterprise Application is distributed in nature such as Banking applications,etc. In java Enterprise Applications is made
through EJB which provides high level security, load balancing, clustering, etc.
4.) Mobile Application:
Mobile Application can be achieved through Android and Java ME for mobile phones,tablets,notebook,etc.
- James Gosling , Mike Sheridan and Patrik Naughton were working for java project, which was called Green Project.
- Green Project (1991) was designed for hand-held devices and set-top boxes. The basic aim of the project was to run the code on different hardware systems.
- It was originally named as Oak but became unsuccessful in 1995, Sun changed its name to Java.
- James Gosling main goal was to implement a virtual machine and a language that held a familiar C/C++ style of notation.
- The first public implementation was Java 1.0 in 1995. It promised “Write Once, Run Anywhere” (WORA)
Java Versions History
- JDK 1.0 (21st Jan, 1996)
- JDK 1.1 (19th Feb, 1997)
- J2SE 1.2 (8th Dec, 1998)
- J2SE 1.3 (8th May, 2000)
- J2SE 1.4 (6th Feb, 2002)
- J2SE 5.0 (30th Sep, 2004)
- Java SE 6 (11th Dec, 2006)
- Java SE 7 (28th Jul, 2011)
- Java EE 7 (27th Oct, 2013)
- Java SE 8 (March 18, 2014)
- Java SE 9 (September 21, 2017)
- Java SE 10 (March, 20, 2018)
What is bytecode in Java?
Bytecode is a highly optimized set of machine code used by JVM (Java Virtual Machine).
It is created by the Java compiler during compilation in the form of a (. class file) with the help of which platform independence feature is achieved.
What is JVM (Java Virtual Machine) ?
- Load Codes
- Verifies Codes
- Executes Codes
- Provides run time environment
- JVM stands for Java Virtual Machine.
- It is an abstract machine also known as Java Interpreter.
- It is a specification that provides run time environment in which a java bytecode can be executed. Java Virtual Machine performs the following main tasks:
What is JRE (Java Runtime Environment) ?
- JRE acronym for Java Runtime Environment
- JRE is an implementation of JVM
- It is a set of software tools used for developing Java applications.
- It contains a set of libraries and other files used by JVM at runtime.
What is JDK (Java Development Kit) ?
- JDK stands for Java Development Kit
- JDK is a development kit which provides environment to develop java applications and applets.
- It contains JRE + JVM + other development tools.
- It is only used by java developers.