Junior — Middle
Как да се гарантира, че един клас работи едновременно с няколко интерфейса или реализации?
sobes.tech AI
Отговор от AI
В iOS (Swift или Objective-C) клас може да реализира няколко протокола (интерфейса), което му позволява да работи с различни набори от методи.
Пример на Swift:
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("Потребител: \(name), ID: \(id)")
}
}
let user = User(id: "123", name: "Alice")
user.printInfo()
По този начин, класът User реализира едновременно два интерфейса — Printable и Identifiable. Това позволява използването на обекта в различни контексти, където е необходим един от тези интерфейси.
Ако искате да работите с различни реализации, можете да използвате композиция или делегиране, за да превключвате между тях.