2012-05-07 10 views

Odpowiedz

3

Poniższy kod podaje szerokość i długość geograficzną. getInstance() zwróci instancję tej konkretnej klasy.

29

Klasy, które używają metod getInstance() i tym podobnych, są oznaczone jako singleton design pattern. Zasadniczo będzie tylko jedna instancja tej konkretnej klasy, a otrzymasz ją z getInstance().

W tym przypadku LocationProvider będzie mieć tylko jedno wystąpienie, ponieważ jest specyficzne dla urządzenia. Zamiast tworzyć nowe instancje, można użyć udostępnionej instancji za pomocą metody getInstance(). Wzorzec singleton jest często używany w Javie, gdy ma się do czynienia z takimi elementami, jak menedżery danych i interfejsy sprzętowe, ale nie powinien być używany dla zbyt wielu innych elementów, ponieważ ogranicza użytkownika do pojedynczej instancji.

3

Metoda getInstance() nazywana jest metodą fabryczną. Jest używany do tworzenia klasy singleton. Oznacza to, że zostanie utworzone tylko jedno wystąpienie tej klasy, a inne będą miały odniesienie do tej klasy.

+0

To jest nieprawidłowe. Na przykład 'Calendar.getInstance() == Calendar.getInstance()' to 'false'. – gwg

Powiązane problemy