Co to jest leniwa inicjalizacja w Singleton?
Co to jest leniwa inicjalizacja w Singleton?

Wideo: Co to jest leniwa inicjalizacja w Singleton?

Wideo: Co to jest leniwa inicjalizacja w Singleton?
Wideo: Singleton Design Pattern using Lazy Instantiation Part 2 2024, Listopad
Anonim

Leniwa inicjalizacja to technika, w której odkłada się instancja przedmiotu aż do jego pierwszego użycia. Innymi słowy, instancja klasy jest tworzona, gdy wymaga się jej użycia po raz pierwszy. Ideą tego jest uniknięcie niepotrzebnego tworzenia instancji.

Co to jest leniwa inicjalizacja w Javie?

Inicjalizacja leniwa to optymalizacja wydajności. Jest używany, gdy z jakiegoś powodu dane są uważane za „drogie”. Na przykład: jeśli wartość hashCode dla obiektu może w rzeczywistości nie być potrzebna wywołującemu obiekt, zawsze obliczanie hashCode dla wszystkich wystąpień obiektu może wydawać się niepotrzebne.

Można też zapytać, jak rozbić singletona? Serializacja służy do konwertowania obiektu strumienia bajtów i zapisywania w pliku lub wysyłania przez sieć. Załóżmy, że serializujesz obiekt a singel klasa. Następnie, jeśli uszeregujesz ten obiekt, utworzy on nową instancję, a tym samym przerwa ten singel wzór.

Czym zatem jest leniwa i gorliwa inicjalizacja?

Inicjalizacja leniwa Jest to technika, w której ograniczamy tworzenie obiektów, dopóki nie zostanie utworzony przez kod aplikacji. W inny sposób chętna inicjalizacja tworzy obiekt z wyprzedzeniem i zaraz po uruchomieniu aplikacji lub modułu. Jest to pomocne w przypadku, gdy obiekt jest obowiązkowy i we wszystkich przypadkach funkcjonalny.

Jaki jest pożytek z klasy singleton?

W Javie Jednotonowy wzór zapewni, że będzie tylko jedno wystąpienie klasa jest tworzony w wirtualnej maszynie Javy. To jest używany aby zapewnić globalny punkt dostępu do obiektu. Pod względem praktycznym użyj Singletona wzory są używany w logowaniu, pamięciach podręcznych, pulach wątków, ustawieniach konfiguracyjnych, obiektach sterowników urządzeń.

Zalecana: