Obyekt yönümlü proqramlaşdırmada müxtəlif polimorfizm növlərini sadalaya bilərsinizmi?
sobes.tech Süni İntellekt
AI-dan cavab
Obyekt yönümlü proqramlaşdırmada (OOP) əsas polimorfizm növləri ayırd edilir:
-
Alt növ polimorfizmi (Subtype Polymorphism) — ən yaygın növ, miras alma və metodların yenidən yazılması ilə həyata keçirilir. Bu, əsas sinfin obyektləri yerinə alt sinif obyektlərinin istifadə olunmasına imkan verir.
-
Parametrik polimorfizm (Parametric Polymorphism) — ümumi tiplər (generics) vasitəsilə həyata keçirilir, burada funksiyalar və ya siniflər hər hansı məlumat tipilə işləyə bilər.
-
Ad-hoc polimorfizm (Ad-hoc Polymorphism) — funksiyaların və operatorların yüklənməsini əhatə edir, burada bir funksiya müxtəlif parametri tipləri ilə çoxsaylı icraata malikdir.
-
İcranın vaxtı polimorfizmi (Runtime Polymorphism) — virtual metodlar və dinamik bağlama vasitəsilə əldə edilir, burada metod çağırışı icra zamanı müəyyən edilir.
Swift (iOS) dilində alt növ polimorfizminə nümunə:
class Animal {
func sound() {
print("Hər hansı bir səs")
}
}
class Dog: Animal {
override func sound() {
print("Havlama")
}
}
class Cat: Animal {
override func sound() {
print("Miyov")
}
}
let animals: [Animal] = [Dog(), Cat()]
for animal in animals {
animal.sound() // Metod çağırışı obyektin faktiki növündən asılıdır
}