✅ Created by: James Gosling at Sun Microsystems (1991)
✅ Released in: 1995
✅ Original Name: Oak (renamed to Java)
✅ Key Principle: "Write Once, Run Anywhere" (WORA)
✅ Major Versions:
Java 1.0 ->
Java 2 →
Java 5 →
Java 8 →
Java 17 ->
Java 21 (LTS versions)
✅ Owned by: Oracle (after acquiring Sun Microsystems in 2009)
def________________________________________________________________________________
________
Java is a high-level, object-oriented, platform-independent programming
language It follows the "Write Once, Run Anywhere" (WORA) principle,
meaning Java programs can run on any platform that has a
Java Virtual Machine (JVM). It is widely used for web applications,
mobile applications (Android),enterprise software, cloud computing,
and more due to its security, scalability, and robustness.
Features of
JAVA_______________________________________________________________________________
______
1. Object-Oriented
Java follows the object-oriented programming (OOP) paradigm, which includes
concepts like classes, objects, inheritance, polymorphism, encapsulation, and
abstraction.
2. Platform-Independent (Write Once, Run Anywhere - WORA)
Java code is compiled into bytecode, which runs on the Java Virtual Machine (JVM).
This makes Java programs platform-independent.
3. Simple and Easy to Learn
Java is designed to be simple compared to languages like C++. It removes
complexities like pointers and explicit memory management.
4. Secure
Java has built-in security features like bytecode verification, access control,
exception handling, and no use of explicit pointers, reducing vulnerabilities.
5. Robust (Strong Memory Management)
Java provides automatic garbage collection and exception handling, which helps
prevent memory leaks and crashes.
6. Multithreading Support
Java allows multiple threads to run simultaneously, enabling efficient CPU
utilization and faster execution of tasks.
7. High Performance
While Java is slower than C/C++, Just-In-Time (JIT) compilation improves
performance by converting bytecode into native machine code at runtime.
8. Distributed Computing Support
Java provides features like Remote Method Invocation (RMI) and Java EE for
developing distributed applications.
9. Dynamic and Extensible
Java supports dynamic class loading, meaning classes are loaded into memory when
required, reducing overhead.
10. Rich API and Large Community Support
Java offers a vast set of APIs for networking, I/O operations, databases, GUI
development, and more.
It also has a large developer community, making troubleshooting easier.