Junior — Middle
Poate fi declarat un închidere ca atribut al clasei?
sobes.tech AI
Răspuns de la AI
Da, în iOS (Swift sau Objective-C) se pot declara closures ca atribut (proprietate) a unei clase. Acest lucru este adesea folosit pentru a transmite callback-uri sau pentru a gestiona evenimente.
De exemplu, în Swift:
class MyClass {
var completionHandler: (() -> Void)?
func doSomething() {
// Execută o anumită sarcină
// ...
// Apelează closure dacă este definită
completionHandler?()
}
}
let obj = MyClass()
obj.completionHandler = {
print("Sarcina a fost finalizată")
}
obj.doSomething()
Această abordare permite configurarea flexibilă a comportamentului clasei din exterior, transmitând logica prin closures.