Junior — Middle
W jaki sposób mechanizm enkapsulacji jest używany w języku Swift?
sobes.tech AI
Odpowiedź od AI
W Swift mechanizm enkapsulacji realizowany jest za pomocą poziomów dostępu do właściwości i metod klas, struktur i wyliczeń. Główne poziomy dostępu to:
openipublic— dostęp z dowolnego modułuinternal(domyślnie) — dostęp w obrębie bieżącego modułufileprivate— dostęp w obrębie bieżącego plikuprivate— dostęp tylko w obrębie bieżącego deklaracji
Pozwala to ukryć wewnętrzne szczegóły implementacji i zapewnić tylko niezbędny interfejs do interakcji z obiektem.
Przykład:
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 nie jest dostępne z zewnątrz
W ten sposób enkapsulacja pomaga chronić dane i kontrolować dostęp do nich.