Junior — Middle
¿Cómo se puede garantizar que una clase funcione simultáneamente con varias interfaces o implementaciones?
sobes.tech AI
Respuesta de la IA
En iOS (Swift o Objective-C), una clase puede implementar varios protocolos (interfaces), lo que le permite trabajar con diferentes conjuntos de métodos.
Ejemplo en 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("Usuario: \(name), ID: \(id)")
}
}
let user = User(id: "123", name: "Alice")
user.printInfo()
De esta manera, la clase User implementa simultáneamente dos interfaces — Printable y Identifiable. Esto permite usar el objeto en diferentes contextos donde se requiere uno de estos interfaces.
Si necesitas trabajar con diferentes implementaciones, puedes usar composición o delegación para cambiar entre ellas.