Sobes.tech
Junior — Middle

Можеш ли да набројиш и опишеш различите нивое приступа у језику Swift?

sobes.tech АИ

Одговор од АИ

У Swift-у постоји неколико нивоа приступа која одређују где се могу користити одређене класе, методе, својства и други елементи кода:

  • open — најотвореније ниво. Омогућава коришћење и наследство класе или преоптерећење метода из било којег модула.
  • public — доступно из било којег модула, али наследство и преоптерећење могуће су само унутар модула где су објављени.
  • internal — доступно само унутар тренутног модула (подразумевано). То значи да су елементи видљиви у свим фајловима модула, али не изван њега.
  • fileprivate — доступно само унутар тренутног фајла.
  • private — најстроже ниво, доступно само унутар тренутне декларације (нпр. унутар класе или структуре).

Пример:

public class Example {
    private var secret = 42
    fileprivate func helper() {}
    internal func doSomething() {}
    public func expose() {}
    open func overrideMe() {}
}

Избор нивоа приступа помаже у контролисању енкапсулације и заштити унутрашњих детаља имплементације.