Java Overview
Java is an open-source, class-based, high-level, object-oriented programming language. Java is platform independent as the Java programs are compiled into byte code that is platform independent.
History:
Java programming language was created by James Gosling in 1995. The original idea was to design a language for the television industry. Gosling worked along with his team also called the Green Team and the project they worked on was called Greentalk. This project was later named as OAK. The name OAK has its roots in the oak tree that stood outside Gosling’s office. This name had to be dropped later as it was already a trademark by Oak Technologies.
So how was the name Java suggested?
Since the language could no longer be named OAK, Gosling and his team had to come up with a new name. The team considered various names like DNA, RUBY, JAVA, jolt, dynamic, revolutionary, SILK.
But the name had to be unique and quite easy to say. The name JAVA occurred in Gosling’s mind while having a cup of coffee at his office.
Types of Java applications:
A. Web Application:
Web applications are the applications that run on web browsers using servlet, JSP, struts technologies. These technologies create Java web applications and deploy them on servers.
B. Mobile Application:
These are mobile applications created using Java.
C. Standalone Application:
Standalone applications are executed by themselves without the need for other programs and files. An example of such an application is antivirus software.
D. Enterprise Application:
Some applications are designed for corporate organizations with the intent to control major processes in real time. Such applications are called enterprise applications.
Features
- Object Oriented: In object-oriented programming, everything is an object rather than functions and logic.
- Simple: Java is simple to understand, easy to learn, and implement.
- Secured: It is possible to design secured software systems using Java.
- Platform Independent: Java is a write-once, run-anywhere language, meaning once the code is written, it can be executed on any software and hardware systems.
- Portable: Java is not necessarily fixated on a single hardware machine. Once created, Java code can be used on any platform.
- Architecture Neutral: Java is architecture neutral meaning the size of primitive types is fixed and does not vary depending upon the type of architecture.
- Robust: Java emphasizes a lot on error handling, type checking, memory management, etc. This makes it a robust language.
- Interpreted: Java converts high-level program statements into Assembly Level Language, thus making it interpreted.
- Distributed: Java lets us create distributed applications that can run on multiple computers simultaneously.
- Dynamic: Java is designed to adapt to ever-evolving systems thus making it dynamic.
- Multi-thread: Multi-threading is an important feature provided by Java for creating web applications.
- High-performance: Java uses a Just-In-Time compiler thus giving us high performance.