Sobes.tech
Junior — Middle

Kā tiek izmantots inkapsulācijas mehānisms Swift valodā?

sobes.tech AI

Atbilde no AI

Swift valodā inkapsulācijas mehānisms tiek īstenots, izmantojot piekļuves līmeņus klases, struktūras un enumerācijas īpašībām un metodēm. Galvenie piekļuves līmeņi ir:

  • open un public — piekļuve no jebkura moduļa
  • internal (noklusējuma) — piekļuve iekšā esošajā modulī
  • fileprivate — piekļuve iekšā esošajā failā
  • private — piekļuve tikai iekšā esošajā deklarācijā

Tas ļauj slēpt iekšējos realizācijas detaļas un nodrošināt tikai nepieciešamo saskarni ar objektu.

Piemērs:

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 nav pieejams ārpusē

Tādējādi inkapsulācija palīdz aizsargāt datus un kontrolēt piekļuvi tiem.