Návrhové vzory
Z MiS
				
				
				(Rozdíly mezi verzemi)
				
																
				
				
								
				|  (→Jedináček:  Doplněn kód a kratičký komentář) |  (Přidána tovární metoda a odkaz na ITNetwork kurz.) | ||
| (Není zobrazena 1 mezilehlá verze od 1 uživatele.) | |||
| Řádka 3: | Řádka 3: | ||
| Rysy | Rysy | ||
| − | * má třídní (static) atribut <code>instance</code> | + | * má [[Platnost proměnných|třídní (static)]] atribut <code>instance</code> | 
| * má třídní metodu <code>NazevTridy getInstance()</code> | * má třídní metodu <code>NazevTridy getInstance()</code> | ||
| ** vrací hodnotu atributu instance | ** vrací hodnotu atributu instance | ||
| Řádka 33: | Řádka 33: | ||
| Příklad použití: | Příklad použití: | ||
|   Pocitadlo.getInstance().zvysBody(3); |   Pocitadlo.getInstance().zvysBody(3); | ||
| + | |||
| == Pozorovatel == | == Pozorovatel == | ||
| + | |||
| + | |||
| + | == Tovární metoda, tovární třída == | ||
| + | * Viz [https://www.itnetwork.cz/navrh/navrhove-vzory/gof/factory ITNetwork.cz → Factory]. | ||
| == Další zdroje == | == Další zdroje == | ||
| * [http://programujte.com/clanek/2012032900-serial-navrhovych-vzoru-1-dil/ Programujte.com → Seriál návrhových vzorů] | * [http://programujte.com/clanek/2012032900-serial-navrhovych-vzoru-1-dil/ Programujte.com → Seriál návrhových vzorů] | ||
| + | * [https://www.itnetwork.cz/navrh/navrhove-vzory/gof ITNetwork.cz → Návrhové vzory GoF] | ||
Aktuální verze z 12. 10. 2020, 22:58
| Obsah | 
Jedináček
Rysy
-  má třídní (static) atribut instance
-  má třídní metodu NazevTridy getInstance()- vrací hodnotu atributu instance
 
- konstruktory jsou private.
Zajišťuje, že :
- existuje pouze jediná instance zvolené třídy
- k této jediné instanci máme přístup odkudkoli bez nutnosti předávat odkazy prostřednictvím parametrů apod.
Příklad implementace návrhového vzoru:
public class Pocitadlo {
    static Pocitadlo instance = null;
    public static Pocitadlo getInstance() {
        if (Pocitadlo.instance == null) {
            Pocitadlo.instance = new Pocitadlo();
        }
        return Pocitadlo.instance;
    }
    private Pocitadlo() {
        ...
    }
    ...
}
Příklad použití:
Pocitadlo.getInstance().zvysBody(3);
Pozorovatel
Tovární metoda, tovární třída
