Sobes.tech
Junior — Middle

Bir sinfinin eyni zamanda bir neçə interfeys və ya tətbiq ilə işləməsini necə təmin etmək olar?

sobes.tech Süni İntellekt

AI-dan cavab

iOS-da (Swift və ya Objective-C) sinif bir neçə protokol (interfeys) həyata keçirə bilər, bu da ona müxtəlif metodlar dəstləri ilə işləməyə imkan verir.

Swift-də nümunə:

protocol Printable {
    func printInfo()
}

protocol Identifiable {
    var id: String { get }
}

class User: Printable, Identifiable {
    var id: String
    var name: String

    init(id: String, name: String) {
        self.id = id
        self.name = name
    }

    func printInfo() {
        print("İstifadəçi: \(name), ID: \(id)")
    }
}

let user = User(id: "123", name: "Alice")
user.printInfo()

Beləliklə, User sinfi eyni zamanda iki interfeysi — PrintableIdentifiable — həyata keçirir. Bu, obyekti müxtəlif kontekstlərdə istifadə etməyə imkan verir, burada bu interfeyslərdən biri tələb olunur.

Əgər müxtəlif həyata keçirmələrlə işləmək istəyirsinizsə, kompozisiya və ya delegasiya istifadə edə bilərsiniz.