1) History of Java
Origin of Java (1991)
Java was created by James Gosling and his team at Sun Microsystems.
The project was initially called “Green Project.”
It was designed for embedded systems (like TVs, set-top boxes).
First Name: Oak
The language was first named “Oak” (after an oak tree outside Gosling’s office).
Later renamed to Java because “Oak” was already trademarked.
Official Release (1995)
- Java was officially released in 1995.
- Key concept introduced: “Write Once, Run Anywhere (WORA)”
- It became popular due to internet growth and web applications.
Key Features That Made Java Popular
- Platform independent (runs on JVM)
- Object-Oriented Programming (OOP)
- Secure and robust
- Supports multithreading
Java Versions Timeline
Java 1.0 (1996) - First stable version, Focus on web browsers and applets
Java 2 (1998) - Introduced J2SE, J2EE, J2ME, Used for enterprise applications
Java 5 (2004) - Major update: Generics, Enhanced for loop, Autoboxing
Java 8 (2014) - Most popular version - Introduced: Lambda expressions, Stream API
Java 11 (2018) - Long-Term Support (LTS) version
Java 17 (2021) - Another LTS version with performance improvements
Oracle Acquisition (2010)
- Oracle Corporation acquired Sun Microsystems.
- Since then, Oracle maintains Java.
2) Architecture of Java
The architecture of Java explains how Java programs run on different systems using the Java Virtual Machine (JVM). It is the reason behind Java’s famous feature “Write Once, Run Anywhere.”
Java architecture mainly consists of: Java Source Code, Compiler (Javac), Bytecode, JVM (Java Virtual Machine), Operating System
Source Code (.java file)
- Write a program in Java
- Example:
Hello.java
Compiler (Javac)
- The Java compiler converts source code into bytecode
- Bytecode file →
.class
Bytecode
- Platform-independent code
- Can run on any system with JVM
JVM (Java Virtual Machine)
- JVM is the core of Java architecture.
- It converts bytecode into machine code and executes it.
- Executes bytecode using: Interpreter, JIT (Just-In-Time) Compiler
Java Runtime Environment (JRE)
- JRE = JVM + Libraries
- Provides runtime environment to run Java programs
Java Development Kit (JDK)
- JDK = JRE + Development tools
- Includes: Compiler (javac), Debugger, Other tools
Simple Flow Diagram
Java Source Code (.java)
↓
Java Compiler (javac)
↓
Bytecode (.class)
↓
JVM
↓
Machine Code
↓
Operating System
3) Server Provider Companies
Top Server Providers for Java
Amazon Web Services (AWS)
Very popular for Java apps
Supports: Spring Boot, Java EE
Services: EC2 (servers),Elastic Beanstalk (easy deployment for Java)
Used in large-scale enterprise applications
Microsoft Azure
Supports Java, Spring Boot
Good integration with enterprise tools
Provides managed app services
Google Cloud Platform
Good for Java microservices
Supports Kubernetes + Docker
Strong performance
Oracle Cloud
Best for Java because: Oracle owns Java
Great for database + Java applications
Java Application Servers
Apache Tomcat
Most commonly used
Lightweight
Best for beginners
JBoss (WildFly)
Enterprise-level Java server
Supports full Java EE
GlassFish
- Official Java EE reference server
Top comments (0)