Sobes.tech
Junior — Middle

Μπορείς να δώσεις ένα παράδειγμα υλοποίησης του μοτίβου Singleton στον κώδικα;

sobes.tech AI

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

Το μοτίβο Singleton διασφαλίζει ότι μια κλάση έχει μόνο ένα στιγμιότυπο και παρέχει μια παγκόσμια πρόσβαση σε αυτό.

Παράδειγμα υλοποίησης Singleton σε Android (Java):

public class Singleton {
    private static Singleton instance;

    private Singleton() {
        // ιδιωτικός κατασκευαστής για την αποτροπή δημιουργίας στιγμιότυπων από έξω
    }

    public static synchronized Singleton getInstance() {
        if (instance == null) {
            instance = new Singleton();
        }
        return instance;
    }
}

Εδώ, η μέθοδος getInstance() δημιουργεί το αντικείμενο κατά την πρώτη κλήση και το επιστρέφει στις επόμενες. Η λέξη-κλειδί synchronized διασφαλίζει την ασφάλεια σε περιβάλλοντα πολλαπλών νημάτων.