Sobes.tech
Junior — Middle

Bir sinfning bir nechta interfeyslar yoki amalga oshirishlar bilan bir vaqtning o'zida ishlashini qanday ta'minlash mumkin?

sobes.tech AI

AIdan javob

iOS-da (Swift yoki Objective-C) sinf bir nechta protokol (interfeyslar)ni amalga oshirishi mumkin, bu unga turli metodlar to'plami bilan ishlash imkonini beradi.

Swiftda misol:

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("Foydalanuvchi: \(name), ID: \(id)")
    }
}

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

Shu tarzda, User sinfi bir vaqtning o'zida ikkita interfeysni — Printable va Identifiable — amalga oshiradi. Bu ob'ektni turli kontekstlarda, ularning biriga ehtiyoj bo'lsa, ishlatishga imkon beradi.

Agar turli amalga oshirishlar bilan ishlashni istasangiz, kompozitsiya yoki delegatsiya usullaridan foydalanishingiz mumkin.