Junior — Middle
Как може да се реализира стандартното поведение на свойство в клас?
sobes.tech AI
Отговор от AI
В Android (Java/Kotlin) стандартното поведение на свойство в клас може да бъде реализирано чрез гетъри и сетъри. Това позволява да се контролира достъпа до полето и при необходимост да се добави допълнителна логика при четене или писане на стойността.
Пример на Kotlin с използване на стандартни гетъри и сетъри:
class User {
var name: String = ""
get() = field.toUpperCase() // при четене връща името в главни букви
set(value) {
field = value.trim() // при писане премахва интервалите
}
}
Тук field е специално поле, което съхранява стойността на свойството. Ако не се препишат гетърът и сетърът, поведението ще бъде стандартно — просто четене и писане.
В Java обикновено се създава частно поле и публични методи get/set:
public class User {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name.trim();
}
}
По този начин стандартното поведение на свойството е капсулиране на полето чрез методи за достъп.