Abstract Classes
abstract, keyword, se, EK, class, ko, "abstract" MARK, kiya, jaata hai — DIRECTLY, new, se, INSTANTIATE, nahi, ki, ja, sakti. abstract, methods, sirf, SIGNATURE, DEFINE, karte, HAIN, IMPLEMENTATION, nahi — SUBCLASSES, ko, IMPLEMENT, karna, ZAROORI, hai.
Abstract, classes, "COMMON, IMPLEMENTATION" (non-abstract, methods) aur, "REQUIRED, CONTRACT" (abstract, methods) DONO, ko, COMBINE, karti, HAIN — pure, interfaces, se, ZYAADA, POWERFUL, hain.
abstract class Shape {
abstract getArea(): number; // implementation, nahi, — subclass, mein, hoga
describe(): string { // regular, method — shared, implementation
return `Area: ${this.getArea()}`;
}
}
class Circle extends Shape {
constructor(private radius: number) { super(); }
getArea(): number {
return Math.PI * this.radius ** 2;
}
}
// new Shape(); // ERROR — abstract class, directly, instantiate, nahi, ho, sakti- abstract class = directly, instantiate, nahi, ki, ja, sakti — sirf, EXTEND, ki, ja, sakti, hai
- abstract methods = signature, define, karte, hain, implementation, nahi
- Common, implementation, aur, required, contract, DONO, combine, karti, hain
Abstract, methods, ke, ALAWA, abstract, PROPERTIES, bhi, ho, sakti, HAIN — SUBCLASSES, ko, INKE, liye, EK, VALUE, PROVIDE, karna, ZAROORI, hai, IMPLEMENTATION, ke, WAQT.
abstract class Vehicle {
abstract maxSpeed: number;
}
class Car extends Vehicle {
maxSpeed = 180;
}Abstract, classes, ka, EK, constructor, ho, sakta hai — LEKIN, YE, DIRECTLY, new, se, CALL, nahi, kiya, ja, sakta, SIRF, super() ke, through, SUBCLASS, constructors, se, CALL, hota hai.