AnyCompiler

Classes aur Objects

Ek class related fields ko ek naam wale type ke neeche sath mein group karta hai, aur ek constructor ek special method hai, jiska naam class jaisa hota hai, jo jab bhi aap new se ek naya instance banate hain to khud ba khud chalta hai. Constructor ke andar this.name = name parameter ko object ke khud ke field mein assign karta hai, jab dono ka naam same ho to inhe disambiguate karte hue.

public class Main {
    static class Person {
        String name;
        int age;

        Person(String name, int age) {
            this.name = name;
            this.age = age;
        }
    }

    public static void main(String[] args) {
        Person alice = new Person("Alice", 30);
        System.out.println(alice.name + " is " + alice.age + " years old");
    }
}
Output
Alice is 30 years old

Aage: encapsulation — private fields, getters, aur kyun Java code almost hamesha apne fields ko methods ke peeche chhupata hai.

Practice exercise

Ek class Book define karein jiske fields title (String) aur pages (int) hon. Title "Dune" aur pages 412 wali ek Book banayein, phir System.out.println(book.title + " " + book.pages) ka istemal kar ke title aur pages print karein.