Junior
Cum se realizează încapsularea în Kotlin?
sobes.tech AI
Răspuns de la AI
Încapsularea în Kotlin se realizează prin intermediul modificatorilor de acces și proprietăților.
Modificatori de acces:
public: accesibil de oriunde (implicit).internal: accesibil în cadrul aceluiași modul.protected: accesibil în propria clasă și în subclasele sale.private: accesibil doar în interiorul clasei în care este declarat.
Proprietățile sunt utilizate pentru a controla accesul la datele clasei. Ele pot avea un getter și un setter, care pot fi suprascrise pentru a adăuga logică la citirea sau scrierea valorii.
class Person {
// Câmp privat, accesibil doar în interiorul clasei
private var _name: String = ""
// Proprietate cu getter public și setter privat
var name: String
get() = _name
private set(value) {
_name = value
}
// Funcție publică pentru setarea numelui, controlând intrarea
fun setName(newName: String) {
if (newName.isNotBlank()) {
name = newName
} else {
println("Numele nu poate fi gol")
}
}
}
fun main() {
val person = Person()
person.setName("Alice") // Folosim metoda controlată pentru schimbare
println(person.name) // Citim valoarea prin getter
// person.name = "Bob" // Eroare de compilare, setterul este privat
}