设计模式_JAVA_策略模式
声明:代码由辅导老师(廖老师)提供
public class MainTest {
public static void main(String[] args) {
Person p = new Person( "老王" );
TravelStategy stategy = new SwimStrategy(); //指明是哪一种策略
p.setTravelStategy( stategy );
p.doTtravel();
}
}
interface TravelStategy {
public void travel();
}
class AirStrategy implements TravelStategy {
public void travel() {
System.out.println( "坐飞机出行! " );
}
}
class SwimStrategy implements TravelStategy {
public void travel() {
System.out.println( "游泳出行! " );
}
}
class Person {
String name;
TravelStategy stategy = null;
public Person( String name ){
this.name = name;
}
//设置旅游出行的方式
public void setTravelStategy( TravelStategy stategy ){
this.stategy = stategy;
}
//旅游
public void doTtravel(){
if( stategy==null )
System.out.println( "你还没设置旅游的方式" );
else
stategy.travel();
}
}
结构:
主类:
接口:
旅行方式类两个(坐飞机,游泳)
人这个类
还没有评论,来说两句吧...