public abstract class AbstractBuy { public abstract void doBuy();}
public class BuilderUtil { public String message; public boolean flag; private boolean isCotinue=true; /**是否可以购买**/ public BuilderUtil isBuy(boolean f){ if(isCotinue){ if(f){ message="可以购买"; flag=true; isCotinue=true; }else{ message="不可以购买"; flag=false; isCotinue=false; } } return this; } /**是否有足够的钱买**/ public BuilderUtil isMoney(double fy){ if(isCotinue){ if(fy >=1000){ message="钱不够"; flag=false; isCotinue=false; }else{ message="有足够的钱"; flag=true; isCotinue=true; } } return this; } public BuilderUtil isAvalioble(double money,AbstractBuy buy){ buy.doBuy(); return this; } public String getMessage() { return message; } public void setMessage(String message) { this.message = message; } public boolean isFlag() { return flag; } public void setFlag(boolean flag) { this.flag = flag; }}
测试
public class BuilderTest { public static void main(String[] args) { BuilderUtil builderUtil=new BuilderUtil(); BuilderUtil builder=builderUtil.isBuy(false).isMoney(10000); System.out.println(builder.getMessage()); }}