Junior — Middle
78
Каким образом используется механизм инкапсуляции в языке Swift?
Компании, где спрашивали
Itexus
Ответ от нейросети
sobes.tech AI
В Swift механизм инкапсуляции реализуется с помощью уровней доступа к свойствам и методам классов, структур и перечислений. Основные уровни доступа:
openиpublic— доступ из любого модуляinternal(по умолчанию) — доступ внутри текущего модуляfileprivate— доступ внутри текущего файлаprivate— доступ только внутри текущего объявления
Это позволяет скрывать внутренние детали реализации и предоставлять только необходимый интерфейс для взаимодействия с объектом.
Пример:
class BankAccount {
private var balance: Double = 0.0
func deposit(amount: Double) {
guard amount > 0 else { return }
balance += amount
}
func getBalance() -> Double {
return balance
}
}
let account = BankAccount()
account.deposit(amount: 100)
print(account.getBalance()) // 100
// account.balance недоступно извне
Таким образом, инкапсуляция помогает защитить данные и контролировать доступ к ним.