Day 1 – Java Basics and Features


Java ek high-level, object-oriented programming language hai jiska use hum web applications, mobile applications aur system design banane ke liye karte hain.
Java ka ek sabse bada advantage hai ki yeh platform independent hai. Matlab agar humne ek baar program likh diya to usko kisi bhi operating system (Windows, Linux, Mac) par run kar sakte hain. Isi wajah se Java ka ek famous slogan hai:
Write Once, Run Anywhere (WORA)
Features of Java
Simple
Java ka syntax easy hai aur C++ se inspired hai, isiliye beginners ke liye samajhna aasaan hota hai.
Pointers aur complex features (jaise operator overloading) ko hata diya gaya hai.
Object-Oriented (OOPs Supporting)
Sab kuch objects ke form me represent hota hai.
Major OOPs concepts: Encapsulation, Inheritance, Polymorphism, Abstraction.
Platform Independent
Java code compile hone ke baad bytecode me convert hota hai.
Bytecode ko JVM (Java Virtual Machine) kisi bhi operating system par run kar sakta hai.
Isi wajah se slogan hai: “Write Once, Run Anywhere”.
Secure
Java pointer ka use nahi karta, isiliye memory direct access nahi hoti.
Built-in security manager aur exception handling se program secure hota hai.
Viruses aur unauthorized access ke khatre kam hote hain.
Robust (Strong & Reliable)
Java strict compile-time checking karta hai aur runtime exception handling deta hai.
Automatic Garbage Collection se memory management aasaan ho jata hai.
High Performance
Java interpreter ke alawa JIT (Just-In-Time) compiler use karta hai jo bytecode ko fast machine code me convert karta hai.
Isse performance improve hoti hai.
Multithreaded
Ek hi program me multiple tasks (threads) parallel chal sakte hain.
Example: Video call app me ek saath video + audio + text handle karna.
Distributed
Java RMI (Remote Method Invocation) aur CORBA support karta hai.
Internet aur network-based applications banane ke liye useful hai.
Portable
Java programs hardware aur operating system specific nahi hote.
Bytecode har system par JVM ke through run hota hai.
Dynamic
Java runtime par new classes load kar sakta hai.
Reflection API aur dynamic linking ki wajah se flexibility badh jati hai.
JDK (Java Development Kit)
Definition:
JDK ek software development environment hai jo Java applications develop aur run karne ke liye use hota hai.Components of JDK:
JRE (Java Runtime Environment):
- Java programs ko run karne ke liye zaroori environment deta hai.
Compiler (javac):
- Java source code (.java) ko bytecode (.class) me convert karta hai.
JVM (Java Virtual Machine):
- Bytecode ko execute karta hai aur har platform par run hone deta hai.
Development Tools:
- Debugger, archiver (jar), documentation tool (javadoc), aur anya tools jo development me help karte hain.
Use:
Agar aapko sirf program run karna hai to JRE kaafi hai.
Agar aapko program develop + run karna hai to JDK ki zarurat hoti hai.
JVM (Java Virtual Machine)
Definition:
JVM ek virtual machine hai jo Java programs ke bytecode ko machine code me convert karke run karta hai.Role:
Java compiler (
javac
) source code ko bytecode (.class files) me convert karta hai.JVM is bytecode ko interpret/compile karke host machine par run karta hai.
Isi wajah se Java platform-independent hai, kyunki har OS ke liye alag JVM available hota hai.
Important Functions of JVM:
Loads: Bytecode ko memory me load karta hai.
Verifies: Bytecode safe aur secure hai ya nahi, check karta hai.
Executes: Bytecode ko machine instructions me convert karke chalata hai.
Manages Memory: Automatic Garbage Collection provide karta hai.
Key Point:
JVM har operating system (Windows, Linux, Mac) ke liye alag hota hai,
lekin bytecode same rehta hai. Isi wajah se kehte hain:
“Write Once, Run Anywhere”
JRE (Java Runtime Environment)
Definition:
JRE ek runtime environment hai jo Java program ko execute/run karne ke liye zaruri libraries aur JVM provide karta hai.Components of JRE:
JVM (Java Virtual Machine): Bytecode ko execute karta hai.
Class Libraries: Java program ke liye pre-built classes aur APIs (jaise java.lang, java.util).
Use:
Agar aapko sirf Java program run karna hai (develop nahi), to JRE sufficient hai.
Example: Normal user ke system me sirf JRE install hota hai taaki wo Java-based applications (like Eclipse, Minecraft) run kar sake.
Key Point:
👉 JRE = JVM + Libraries
(Development tools like compiler JRE me nahi hote).
Subscribe to my newsletter
Read articles from Suraj Kumar directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by

Suraj Kumar
Suraj Kumar
I am MERN STACK Web Developer.I am Student of BCA.