Инкапсуляция - это принцип размещения данных и методов работы с этими данными в одном объекте. Разграничение доступа к этим данным посредством спец. флагов(ключевых слов).

Свойства и методы доступны только из нутри класса, снаружи их можно изменять/вызывать через другие методы(функции) класса

class Wallet { var balance = 0 }

Без инкапсуляции

var wallet = Wallet()
wallet.balance = -5000 // что не должно быть так

С инкапсуляцией

class Wallet {
private var balance = 0
func add(cash: Int) {
self.balance = +=cash
}

func getBallance()-> Int {
return self.balance
}
}