Sobes.tech
Junior — Middle

Jak można zaimplementować standardowe zachowanie właściwości w klasie?

sobes.tech AI

Odpowiedź od AI

W Android (Java/Kotlin) standardowe zachowanie właściwości w klasie można zaimplementować za pomocą getterów i setterów. Pozwala to kontrolować dostęp do pola i w razie potrzeby dodawać dodatkową logikę podczas odczytu lub zapisu wartości.

Przykład w Kotlinie z użyciem standardowych getterów i setterów:

class User {
    var name: String = ""
        get() = field.toUpperCase()  // podczas odczytu zwraca imię wielkimi literami
        set(value) {
            field = value.trim()       // podczas zapisu usuwa spacje
        }
}

Tutaj field to specjalne pole przechowujące wartość właściwości. Jeśli nie nadpiszemy getterów i setterów, zachowanie będzie standardowe — po prostu odczyt i zapis wartości.

W Javie zazwyczaj tworzy się prywatne pole i publiczne metody get/set:

public class User {
    private String name;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name.trim();
    }
}

W ten sposób standardowe zachowanie właściwości to enkapsulacja pola za pomocą metod dostępowych.