Junior — Middle
85
Swift тілінде инкапсуляция механизмі қалай пайдаланылады?
Сұралған компаниялар
Itexus
AI-дан жауап
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 недоступно извне
Таким образом, инкапсуляция помогает защитить данные и контролировать доступ к ним.