Introduction to Java
Java is a programming language developed by James Gosling and his team at Sun Microsystems in 1995. Initially, it was called Oak, but since that name was already registered by another company, it was later renamed to Java.
Notes:
- Development of Java started in 1991 under the “Green Project.”
- It was officially released in 1995.
In 2010, Oracle Corporation acquired Sun Microsystems, and since then Oracle has been responsible for the continued development, stewardship, and support of Java.
The main goal of Java is “write once, run anywhere” (WORA) – meaning a program written in Java can run on multiple operating systems (such as Windows, Linux, and macOS) without modification, provided a compatible Java Virtual Machine (JVM) is available.
- Initial Release: Java 1.0 (January 1996)
- Major Milestones:
- Java 2 (J2SE 1.2, 1998): Introduced Swing, Collections, strict JVM specification.
- Java 5 (2004): Added generics, annotations, enhanced for-loop, autoboxing.
- Java 8 (2014): A landmark release introducing Lambda expressions, Streams API, and Date/Time API.
- Java 9 (2017): Introduced the Module System (Project Jigsaw).
- Java 10 (March 2018): Added var keyword for local variable type inference.
- Java 11 (September 2018, LTS): Removed Applets, added new HTTP Client API, and became a Long-Term Support (LTS) version.
- Java 17 (September 2021, LTS): Introduced pattern matching, sealed classes, enhanced switch expressions.
- Java 21 (September 2023, LTS): The latest LTS version as of 2025, featuring Virtual Threads (Project Loom), record patterns, string templates, and significant JVM improvements.
Many enhanced versions of Java have been released over the years, bringing improvements in performance, security, scalability, cloud support, and developer productivity. ( Note: The latest long-term support (LTS) version as of 2025 is Java 21, released in September 2023.)
Setting Up the Java Environment
Learn how to set up the Java environment on your system to start building and running Java applications smoothly.
How to Download and Install Java Development Kit (JDK) and Java Runtime Environment (JRE)
In this step-by-step guide to downloading and installing the latest JDK and JRE, you’ll learn how to set up Java for Windows, macOS, and Linux, configure environment variables, and verify your installation for seamless Java programming and application execution.
Overview of Integrated Development Environments (IDEs) like Eclipse, IntelliJ IDEA, and NetBeans
Explore the most popular Java IDEs—Eclipse, IntelliJ IDEA, and NetBeans—and understand their features for faster and more efficient coding.
Instructions for Setting Up the PATH Environment Variable and Verifying Installation
Follow this detailed guide on how to set up the Java PATH environment variable to configure Java correctly and verify the installation on your system
Key Features of Java
Java was designed with the following important properties:
- Simple
- Platform Independent
- Object-Oriented
- Portable
- Robust
- Secure
- Multithreaded
🔹 Simple
🔹 Platform Independent
🔹 Object-Oriented Programming Language
Java is an object-oriented programming (OOP) language. Almost everything in Java is treated as an object (except primitive data types).
The four main OOP principles in Java are:
👉Abstraction
👉Encapsulation
👉Inheritance
👉Polymorphism
🔹 Portable
Java is portable because its compiled bytecode can be executed on any platform that supports the JVM. This means code written on one machine can run on another without modification.
🔹 Robust
Java is considered robust because it has strong memory management, garbage collection, and exception handling, reducing the chances of crashes and errors.
🔹 Secure
Java is designed with security in mind. Since it does not use pointers (which can lead to memory access vulnerabilities) and runs inside the JVM sandbox, it prevents unauthorized access and ensures a safer execution environment.
🔹 Multithreaded
Java supports multithreading, allowing developers to write programs that can perform multiple tasks simultaneously.Threads in Java share a common memory area, making it efficient and suitable for high-performance applications.
No comments:
Post a Comment