Junior — Middle
Kan een closure worden gedeclareerd als een attribuut van een klasse?
sobes.tech AI
Antwoord van AI
Ja, in iOS (Swift of Objective-C) kunnen closures worden gedeclareerd als attributen (eigenschappen) van een klasse. Dit wordt vaak gebruikt om callbacks door te geven of gebeurtenissen te verwerken.
Bijvoorbeeld, in Swift:
class MyClass {
var completionHandler: (() -> Void)?
func doSomething() {
// Voer een taak uit
// ...
// Roep de closure aan als deze is ingesteld
completionHandler?()
}
}
let obj = MyClass()
obj.completionHandler = {
print("Taak voltooid")
}
obj.doSomething()
Deze aanpak maakt het mogelijk om het gedrag van de klasse flexibel van buitenaf te configureren, door de logica via closures door te geven.