Sobes.tech
Junior — Middle

Jak je v jazyce Swift používán mechanismus zapouzdření?

sobes.tech AI

Odpověď od AI

V jazyce Swift je mechanismus zapouzdření realizován pomocí úrovní přístupu k vlastnostem a metodám tříd, struktur a výčtů. Hlavní úrovně přístupu jsou:

  • open a public — přístup z libovolného modulu
  • internal (výchozí) — přístup uvnitř aktuálního modulu
  • fileprivate — přístup uvnitř aktuálního souboru
  • private — přístup pouze uvnitř aktuální deklarace

To umožňuje skrýt interní detaily implementace a poskytovat pouze nezbytné rozhraní pro interakci s objektem.

Příklad:

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 není přístupné zvenčí

Tímto způsobem pomáhá zapouzdření chránit data a kontrolovat přístup k nim.