Junior — Middle
Kuidas tagada, et klass töötab samaaegselt mitme liidese või teostusega?
sobes.tech AI
Vastus AI-lt
iOS-il (Swift või Objective-C) klass võib rakendada mitmeid protokolle (liideseid), mis võimaldab tal töötada erinevate meetodite kogumitega.
Näide Swiftis:
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("Kasutaja: \(name), ID: \(id)")
}
}
let user = User(id: "123", name: "Alice")
user.printInfo()
Seega, klass User rakendab samaaegselt kahte liidest — Printable ja Identifiable. See võimaldab kasutada objekti erinevates kontekstides, kus on vaja ühte neist liidestest.
Kui soovite töötada erinevate rakendustega, saate kasutada kompositsiooni või delegatsiooni, et nende vahel vahetada.