Sobes.tech
Junior — Middle

Swift dilində eyni zamanda bir neçə sinifdən irs almaq mümkündürmü?

sobes.tech Süni İntellekt

AI-dan cavab

Swift-də eyni zamanda bir neçə sinifdən miras almaq mümkün deyil, yəni çoxlu sinif mirasçılığı dəstəklənmir. Bir sinif yalnız bir valideynə sahib ola bilər. Bunun yerinə, Swift oxşar funksionallıq əldə etmək üçün protokollardan istifadə edir: sinif bir neçə protokolu tətbiq edə bilər, bu da müxtəlif davranışlar və xüsusiyyətlər əlavə etməyə imkan verir, çoxlu miras olmadan.

Protokolların tətbiqi nümunəsi:

protocol Drivable {
    func drive()
}

protocol Flyable {
    func fly()
}

class Vehicle: Drivable {
    func drive() {
        print("İrəli")
    }
}

class FlyingCar: Vehicle, Flyable {
    func fly() {
        print("Uçur")
    }
}

let car = FlyingCar()
car.drive() // İrəli
car.fly()   // Uçur

Beləliklə, Swift protokollar vasitəsilə tərkibə təşviq edir, siniflərin çoxlu mirasından çox.