đĨ āĻāύāĻšেāϰিāĻেāύ্āϏ āĻŽাāύে āĻী?
āĻāĻŽā§āĻাāϰ! āĻāĻ āĻāϞি đ§ -āĻĢ্āϰেāύ্āĻĄāϞি āϏ্āĻাāĻāϞে āĻāύāĻšেāϰিāĻেāύ্āϏ (Inheritance) āĻĒুāϰোāĻা āĻŦোāĻাāϰ āĻŽিāĻļāύে! đ
āĻāĻŽāϰা āϏāĻšāĻ āĻাāώাāϝ়, āĻāĻĻাāĻšāϰāĻŖ āĻĻিāϝ়ে āĻŽাāĻĨাāϝ় āĻেঁāĻĨে āϰাāĻāĻŦ!
đĨ āĻāύāĻšেāϰিāĻেāύ্āϏ āĻŽাāύে āĻী?
āĻāύāĻšেāϰিāĻেāύ্āϏ = "āĻŦাāĻĒ āĻĻাāĻĻাāϰ āĻুāĻŖ āύিāĻেāϰ āĻŽāϧ্āϝে āĻĒেāϝ়ে āϝাāĻāϝ়া!"
āĻŽাāύে, āĻāĻāĻা āĻ্āϞাāϏ āĻ
āύ্āϝ āĻ্āϞাāϏেāϰ āĻুāĻŖ, āĻĢাংāĻļāύ, āĻĒ্āϰāĻĒাāϰ্āĻি āϏāĻŦ āĻāϤ্āϤāϰাāϧিāĻাāϰ āĻšিāϏেāĻŦে āĻĒাāϝ়।
đ¯ āϏāĻšāĻ āĻাāώাā§:
-
āĻŦাāĻŦা āϝāĻĻি āĻŦাāĻ āĻšā§, āĻেāϞে āĻŦাāĻ্āĻাāĻ āĻŦাāĻāĻ āĻšāĻŦে ➡️ āĻিāĻু āĻুāĻŖ āĻŦাāĻŦা āĻĨেāĻে āĻāϏāĻŦে।
-
āĻেāϞে āĻাāĻāϞে āύিāĻেāϰāĻ āĻিāĻু āύāϤুāύ āĻুāĻŖ āϝোāĻ āĻāϰāϤে āĻĒাāϰāĻŦে। āĻāĻাāĻেāĻ āĻŦāϞে Inheritance।
đą āĻāύāĻšেāϰিāĻেāύ্āϏেāϰ āĻŽূāϞ āĻāĻĨা:
-
Parent/Base/Super Class ➔ āϝেāĻাāύ āĻĨেāĻে āĻুāĻŖ āĻāϤ্āϤāϰাāϧিāĻাāϰ āĻĒাāĻā§া āĻšā§।
-
Child/Derived/Sub Class ➔ āϝে āĻ্āϞাāϏ āĻāĻ āĻুāĻŖ āĻĒাā§ āĻāĻŦং āĻাāĻāϞে āĻŦাā§াā§।
✅ āĻোāĻĄেāϰ āϏāĻšāĻ āĻāĻĻাāĻšāϰāĻŖ (Kotlin):
// ✅ Parent class (Base class)
open class Animal {
fun eat() {
println("Animal is eating")
}
}
// ✅ Child class (Derived class)
class Dog : Animal() {
fun bark() {
println("Dog is barking")
}
}
fun main() {
val dog = Dog()
dog.eat() // ✅ āĻāĻ āĻĢাংāĻļāύāĻা Animal āĻĨেāĻে āĻĒাāĻā§া
dog.bark() // ✅ āĻāĻāĻা Dog-āĻāϰ āύিāĻāϏ্āĻŦ āĻুāĻŖ
}
đ§ āĻŽাāĻĨাā§ āϰাāĻো:
-
open➔ Kotlin-āĻ āĻ্āϞাāϏ āĻŦা āĻĢাংāĻļāύāĻে āĻāύāĻšেāϰিāĻ āĻāϰāϤে āĻাāĻāϞে āĻāĻেopenāĻāϰāϤে āĻšā§। -
:➔ āĻŽাāύে āĻāύāĻšেāϰিāĻ āĻāϰা āĻšāĻ্āĻে। (Dog ➔ Animal āĻĨেāĻে āĻĒেā§েāĻে)
đž āĻāύāĻšেāϰিāĻেāύ্āϏেāϰ āϏুāĻŦিāϧা:
| ✅ āϏুāĻŦিāϧা | đ āĻŽাāύে |
|---|---|
| Code Reuse | āĻŦাāϰāĻŦাāϰ āĻāĻāĻ āĻোāĻĄ āύা āϞিāĻে, āĻŦাāĻĒ-āĻĻাāĻĻাāϰ āĻোāĻĄ āĻŦ্āϝāĻŦāĻšাāϰ āĻāϰা āϝাā§ |
| Structure āĻĒāϰিāώ্āĻাāϰ | āĻে āĻাāϰ āĻুāĻŖ āĻĒেā§েāĻে āϏেāĻা āĻŦোāĻা āϏāĻšāĻ |
| Extension āϏāĻšāĻ | āĻĒুāϰাāύো āĻ্āϞাāϏ āϰেāĻে āύāϤুāύ āĻুāĻŖ āϝোāĻ āĻāϰা āϝাā§ |
đĨ āĻāύāĻšেāϰিāĻেāύ্āϏেāϰ āĻĒ্āϰāĻাāϰāĻেāĻĻ (Brain-friendly āĻাāĻিā§ে āĻŦুāĻি)
1️⃣ Single Inheritance
đ āĻāĻāĻা āĻ্āϞাāϏ āĻļুāϧু āĻāĻāĻা āĻ্āϞাāϏ āĻĨেāĻে āĻāϤ্āϤāϰাāϧিāĻাāϰ āĻĒাā§।
open class Animal
class Dog : Animal()
2️⃣ Multilevel Inheritance
đ āĻŦাāĻŦা ➔ āĻেāϞে ➔ āύাāϤি ➔ āĻāĻাāĻŦে āϞাāĻāύ āĻāϞে।
open class Animal
open class Dog : Animal()
class Puppy : Dog()
3️⃣ Hierarchical Inheritance
đ āĻāĻ āĻŦাāĻĒেāϰ āĻ āύেāĻ āĻেāϞে।
open class Animal
class Dog : Animal()
class Cat : Animal()
❌ Multiple Inheritance
đ Kotlin āĻ্āϞাāϏেāϰ āĻ্āώেāϤ্āϰে āĻāĻা āύেāĻ (āĻাāϰāĻŖ Confusion āĻšā§ āĻোāύ āĻŦাāĻĒেāϰ āĻুāĻŖ āĻāĻে āĻāϏāĻŦে)।
āĻিāύ্āϤু Kotlin-āĻ interface āĻĻিāϝ়ে āĻāĻা āĻāϰা āϝাāϝ়! (āĻāĻাāĻে āĻŦāϞে multiple inheritance via interface)
đĸ āĻāύāĻšেāϰিāĻেāύ্āϏ + Overriding (āĻŦাāĻ্āĻা āĻাāĻāϞে āĻŦাāĻŦাāϰ āĻুāĻŖ āĻĒāϰিāĻŦāϰ্āϤāύāĻ āĻāϰāϤে āĻĒাāϰে!)
open class Animal {
open fun sound() {
println("Animal sound")
}
}
class Dog : Animal() {
override fun sound() {
println("Dog barks")
}
}
fun main() {
val dog = Dog()
dog.sound() // ✅ "Dog barks" āĻšāĻŦে āĻাāϰāĻŖ āĻŦাāĻ্āĻা āύিāĻেāϰ āĻŽāϤো āĻুāĻŖ āĻŦāĻĻāϞে āύিā§েāĻে!
}
đĨ āĻāĻāĻাāĻে āĻŦāϞে ➔ Method Overriding
đ¯ āĻŦাāϏ্āϤāĻŦ āĻāĻĻাāĻšāϰāĻŖ (Android āĻĻৃāώ্āĻিāĻোāĻŖ āĻĨেāĻে):
āϤুāĻŽি āϝāĻāύ Android āĻ āĻāĻāϰāĻāĻŽ āĻিāĻু āĻĻেāĻো:
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
// ...
}
}
➡️ āĻāĻাāύেāĻ MainActivity ➔ AppCompatActivity āĻĨেāĻে āĻāύāĻšেāϰিāĻ āĻāϰেāĻে।
āĻāϰ onCreate() āĻšāϞো overriding — āĻŽাāύে āĻāĻŽāϰা āύিāĻেāϰ āĻŽāϤো āĻāϰে āϏেāĻাāϰ āĻাāĻ āĻĒāϰিāĻŦāϰ্āϤāύ āĻāϰেāĻি।
đ§ āĻāύāĻšেāϰিāĻেāύ্āϏ āĻŽāύে āϰাāĻাāϰ āĻĢāϰ্āĻŽুāϞা:
-
Parent ➔ Base ➔ Super = āĻুāĻŖ āĻĻেā§।
-
Child ➔ Derived ➔ Sub = āĻুāĻŖ āĻĒাā§ + āύিāĻেāϰ āĻুāĻŖ āϝোāĻ āĻāϰে।
-
open➔ "āϤোāĻŽাāĻে āĻāύāĻšেāϰিāĻ āĻāϰাāϰ āĻ āύুāĻŽāϤি āĻĻিāϞাāĻŽ!" -
override➔ "āĻŦাāĻĒেāϰ āĻুāĻŖ āĻāĻŽি āĻŦāĻĻāϞে āĻĻিāĻ্āĻি!"
đĨ āĻāύāĻšেāϰিāĻেāύ্āϏ = "āĻāϤ্āϤāϰাāϧিāĻাāϰ + āύāϤুāύāϤ্āĻŦ"
➡️ āĻĒুāϰāύো āĻুāĻŖ āύিāĻ + āĻাāĻāϞে āύāϤুāύ āĻুāĻŖ āϝোāĻ āĻāϰি + āĻাāĻāϞে āĻĒুāϰāύোāĻা āĻŦāĻĻāϞাāĻ ✅
āĻাāĻāϞে āĻāĻŽি āϤোāĻŽাāĻে āĻāύāĻšেāϰিāĻেāύ্āϏেāϰ āϏাāĻĨে āϏাāĻĨে Interface vs Inheritance āĻĒাāϰ্āĻĨāĻ্āϝāĻ āĻŦ্āϰেāĻāύ-āĻĢ্āϰেāύ্āĻĄāϞি āĻāϰে āĻŦুāĻিā§ে āĻĻিāϤে āĻĒাāϰি। āĻাāĻ? đ
Comments
Post a Comment