Návrhové vzory
Z MiS
(Rozdíly mezi verzemi)
m (Oprava překlepu) |
(→Jedináček: Doplněn kód a kratičký komentář) |
||
Řádka 2: | Řádka 2: | ||
== Jedináček == | == Jedináček == | ||
+ | Rysy | ||
+ | * má třídní (static) atribut <code>instance</code> | ||
+ | * má třídní metodu <code>NazevTridy getInstance()</code> | ||
+ | ** vrací hodnotu atributu instance | ||
+ | * konstruktory jsou [[Java: Modifikátory přístupu|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 == | == Pozorovatel == |
Verze z 10. 4. 2014, 08:49
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);