Junior — Middle
Obyektga yo'naltirilgan dasturlashda polimorfizm tushunchasini tushuntirib bera olasizmi?
sobes.tech AI
AIdan javob
Polimorfizm — bu obyektga asoslangan dasturlash tamoyili bo‘lib, u turli sinflarga tegishli obyektlarning bir xil xabarlar (metodlar)ga turlicha javob berishini ta'minlaydi.
Polimorfizmning ikki asosiy turi mavjud:
- Kompilyatsiya (statik) — metodlar va operatorlarning ortiqcha yuklanishi.
- Ijro (dinamik) — meros olgan sinflarda metodlarning qayta yozilishi.
C# tilida dinamik polimorfizm misoli:
class Animal {
public virtual void Speak() {
Console.WriteLine("Animal speaks");
}
}
class Dog : Animal {
public override void Speak() {
Console.WriteLine("Bark");
}
}
class Cat : Animal {
public override void Speak() {
Console.WriteLine("Meow");
}
}
// Foydalanish
Animal myDog = new Dog();
Animal myCat = new Cat();
myDog.Speak(); // "Bark" chiqaradi
myCat.Speak(); // "Meow" chiqaradi
Shu tarzda, Speak() metodiga bir xil chaqiruv, obyekt turiga qarab, turlicha xulq ko‘rsatadi.