Sobes.tech
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.