Sobes.tech
Junior — Middle

Πώς μπορεί να υλοποιηθεί η προεπιλεγμένη συμπεριφορά μιας ιδιότητας σε μια κλάση;

sobes.tech AI

Απάντηση από AI

Στο Android (Java/Kotlin), η προεπιλεγμένη συμπεριφορά μιας ιδιότητας σε μια κλάση μπορεί να υλοποιηθεί με τη χρήση getters και setters. Αυτό επιτρέπει τον έλεγχο της πρόσβασης στο πεδίο και, αν χρειάζεται, την προσθήκη επιπλέον λογικής κατά την ανάγνωση ή την εγγραφή της τιμής.

Παράδειγμα σε Kotlin με τυπικούς getters και setters:

class User {
    var name: String = ""
        get() = field.toUpperCase()  // κατά την ανάγνωση, επιστρέφει το όνομα με κεφαλαία
        set(value) {
            field = value.trim()       // κατά την εγγραφή, αφαιρεί τα κενά
        }
}

Εδώ, το field είναι ένα ειδικό πεδίο που αποθηκεύει την τιμή της ιδιότητας. Αν δεν υπερισχύσουν οι getters και setters, η συμπεριφορά θα είναι τυπική — απλή ανάγνωση και εγγραφή.

Στην Java, συνήθως δημιουργείται ένα ιδιωτικό πεδίο και δημόσιες μέθοδοι get/set:

public class User {
    private String name;

    public String getName() {
        return name;
    }

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

Έτσι, η τυπική συμπεριφορά μιας ιδιότητας είναι η ενσωμάτωση του πεδίου μέσω μεθόδων πρόσβασης.