Strategy
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
Média použitá na této stránce
Autor: Vanderjoe, Licence: CC BY-SA 4.0
Strategy design pattern: Sample UML class and sequence diagram.