Chapter 10Java Tutorial~1 min read
OOP — Classes & Inheritance
Object Oriented Programming
Java पूर्णपणे object-oriented आहे. Class म्हणजे blueprint, Object म्हणजे त्याचा instance. OOP चे 4 pillars: Encapsulation, Inheritance, Polymorphism, Abstraction.
Class आणि Object
Class definition आणि object creation
java
public class Student {
// Instance variables (fields)
private String name; // private — encapsulation
private int marks;
// Constructor — object बनवताना call होतो
public Student(String name, int marks) {
this.name = name; // this = current object
this.marks = marks;
}
// Getter methods
public String getName() { return name; }
public int getMarks() { return marks; }
// Setter methods
public void setMarks(int marks) {
if (marks >= 0 && marks <= 100)
this.marks = marks;
}
// Method
public String getResult() {
return marks >= 40 ? "Pass ✅" : "Fail ❌";
}
// toString — object print केल्यावर
@Override
public String toString() {
return name + " — " + marks + " (" + getResult() + ")";
}
}
// Main class — objects वापरणे
class Main {
public static void main(String[] args) {
Student s1 = new Student("Rahul", 85);
Student s2 = new Student("Priya", 35);
System.out.println(s1); // Rahul — 85 (Pass ✅)
System.out.println(s2); // Priya — 35 (Fail ❌)
s1.setMarks(92);
System.out.println(s1.getName() + ": " + s1.getMarks());
}
}Inheritance — extends
Parent-Child class relationship
java
// Parent class
class Animal {
String name;
Animal(String name) {
this.name = name;
}
void speak() {
System.out.println(name + " काहीतरी आवाज करतो...");
}
void eat() {
System.out.println(name + " खातो.");
}
}
// Child class — Animal extend करतो
class Dog extends Animal {
String breed;
Dog(String name, String breed) {
super(name); // Parent constructor call
this.breed = breed;
}
@Override // Parent method override करतो
void speak() {
System.out.println(name + " भुंकतो: Woof! Woof! 🐕");
}
}
class Cat extends Animal {
Cat(String name) { super(name); }
@Override
void speak() {
System.out.println(name + " म्हणतो: Meow! 🐱");
}
}
// वापरणे
Dog d = new Dog("Bruno", "Labrador");
Cat c = new Cat("Whiskers");
d.speak(); // Bruno भुंकतो: Woof! Woof! 🐕
d.eat(); // Bruno खातो. — inherited from Animal
c.speak(); // Whiskers म्हणतो: Meow! 🐱Access Modifiers
- ▸public — सगळ्यांना accessible
- ▸private — फक्त same class आत — getters/setters द्वारे access
- ▸protected — same class + subclasses + same package
- ▸default (no modifier) — same package मध्ये
✅ Key Points — लक्षात ठेवा
- ▸class Name { fields; constructor; methods; }
- ▸new ClassName(args) — object बनवतो
- ▸this — current object reference
- ▸extends — inheritance, super() — parent constructor
- ▸@Override — parent method overriding
0/11 chapters पूर्ण