WEB开发网
开发学院软件开发Java hand first 设计模式 -状态模式 阅读

hand first 设计模式 -状态模式

 2009-09-17 00:00:00 来源:WEB开发网   
核心提示:状态模式:允许对象在内部状态改变时改变它的的行为.对象看起来好像修改了化的类. 将以超市购物为例--说明状态模式 图片看不清楚?请点击这里查看原图(大图)。所有状态抽象类 Java代码publicabstractclassBuyStat{//在超市状态publicvoidinShop(){System.out.prin

状态模式:允许对象在内部状态改变时改变它的的行为.对象看起来好像修改了化的类.

将以超市购物为例--说明状态模式

hand first 设计模式 -状态模式

图片看不清楚?请点击这里查看原图(大图)。

所有状态抽象类

Java代码  

public abstract class BuyStat { 
 
     //在超市状态 
 public void inShop() { 
 System.out.println("welcome come our shop,please start shoping"); 
 } 
     //选购商品状态 
 public void select() { 
 System.out.println("you not in shop"); 
 } 
 
     //支付状态 
 public void pay() { 
 System.out.println("you don't have merchandise,so don't pay!"); 
 } 
 
     //商品打包 
 public void packing() { 
 System.out.println("you don't have merchandise,so don't packing!"); 
 } 
 
     //抽奖 
 public void winner(){ 
 System.out.println("you don't winner!"); 
 } 
 
}

在超市内

Java代码   

public class InShopStat extends BuyStat { 
 private Shop shop; 
 
 public InShopStat(Shop shop) { 
 this.shop = shop; 
 } 
 
 @Override 
 public void inShop() { 
 // TODO Auto-generated method stub 
 System.out.println("welcome come our shop,please start shoping"); 
     //设置下一个状态 
         shop.setStat(shop.getSelectStat()); 
 } 
 
}

1 2 3 4  下一页

Tags:hand first 设计模式

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接