Junior — Middle
Hogyan használják az inkapszuláció mechanizmusát a Swift nyelvben?
sobes.tech MI
Válasz az MI-től
Swiftben az enkapsuláció mechanizmusa az osztályok, szerkezetek és enumerációk tulajdonságaira és metódusaira vonatkozó hozzáférési szintek segítségével valósul meg. A fő hozzáférési szintek:
openéspublic— minden modulból elérhetőinternal(alapértelmezett) — a jelenlegi modulon belülfileprivate— a jelenlegi fájlon belülprivate— csak a jelenlegi deklaráción belül
Ez lehetővé teszi a belső implementációs részletek elrejtését és csak a szükséges interfész biztosítását az objektummal való interakcióhoz.
Példa:
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 nem elérhető kívülről
Így az enkapsuláció segít az adatok védelmében és az azokhoz való hozzáférés ellenőrzésében.