Junior — Middle
Kun je de verschillende toegangsniveaus in de Swift-taal opsommen en beschrijven?
sobes.tech AI
Antwoord van AI
In Swift zijn er verschillende toegangsniveaus die bepalen waar bepaalde klassen, methoden, eigenschappen en andere code-elementen kunnen worden gebruikt:
- open — het meest open niveau. Hiermee kan een klasse worden gebruikt en geërfd of methoden worden overschreven vanuit elke module.
- public — toegankelijk vanuit elke module, maar erfenis en overschrijving zijn alleen mogelijk binnen de module waar ze zijn gedeclareerd.
- internal — alleen toegankelijk binnen de huidige module (standaard). Dit betekent dat elementen zichtbaar zijn in alle bestanden van de module, maar niet van buitenaf.
- fileprivate — alleen toegankelijk binnen het huidige bestand.
- private — het strengste niveau, alleen toegankelijk binnen de huidige declaratie (bijvoorbeeld binnen een klasse of structuur).
Voorbeeld:
public class Example {
private var secret = 42
fileprivate func helper() {}
internal func doSomething() {}
public func expose() {}
open func overrideMe() {}
}
Het kiezen van het toegangsniveau helpt bij het controleren van encapsulatie en het beschermen van interne implementatiedetails.