Strategy
![](http://upload.wikimedia.org/wikipedia/commons/thumb/4/45/W3sDesign_Strategy_Design_Pattern_UML.jpg/220px-W3sDesign_Strategy_Design_Pattern_UML.jpg)
Návrhový vzor Strategy zapouzdřuje nějaký druh algoritmů nebo objektů, které se mají měnit, tak, aby byly pro klienta zaměnitelné.
Implementace strategy v jazyce JAVA
V ukázce je bytost která má možnost promluvit, bude mluvit rozdílně podle toho jestli je Člověk nebo Pes.
public class Main { public static void main(String[] args) { Bytost b = new Bytost(new Clovek()); b.promluv(); Bytost p = new Bytost(new Pes()); p.promluv(); } } interface Strategy{ void promluv(); } class Clovek implements Strategy{ public void promluv() { System.out.println("člověk promluvil"); } } class Pes implements Strategy{ public void promluv(){ System.out.println("pes zaštěkal"); } } class Bytost{ private Strategy strategy; Bytost(Strategy st){ this.strategy = st; } public void promluv() { strategy.promluv(); } }
Související články
Externí odkazy
Obrázky, zvuky či videa k tématu Strategy na Wikimedia Commons
- Návrhový vzor strategy