CSDN Android客户端 下载就送50C币Markdown大赛获奖名单公布我发课题,大家投票 最流行的语言想学就学! 博主维权
设计模式之Builder Model(笔记)
分类:设计模式
builder设计模式
建造者模式:将一个复杂对象的构建与它的表示分离,,使得同样的构建过程可以创建不同的表示。 建造者模式是在当创建复杂对象的算法应该独立于该对象的组成部分以及它们的装配方式时适用的模式。
首先定义一个产品类Product
public class Product {List<String> list=new ArrayList<String>();(String part){list.add(part);}(){Iterator<String> iterator =list.iterator();while(iterator.hasNext()){String part=iterator.next();System.out.println(part);}}}
接着定义一个builder接口,用来定义装配的方法
public interface IBuilder {();();public Product getProduct();}
然后定义具体的建造者类
{private Product product=new Product();() {product.add(“部件A”);}() {product.add(“部件B”);}@Overridepublic Product getProduct() {return product;}}{private Product product=new Product();() {product.add(“部件C”);}() {product.add(“部件D”);}@Overridepublic Product getProduct() {return product;}}
最后定义一个指挥者类Command
public class Command {(IBuilder builder){builder.buildePartA();builder.buildePartB();}}
客户端代码
(String[] args) { //建造者模式Command command=new Command();IBuilder builder1=new ConcreteBuilder1();IBuilder builder2=new ConcreteBuilder2();//指挥者用ConcreteBuilder1的方法来创造产品command.construct(builder1);Product product1=builder1.getProduct();product1.show();command.construct(builder2);Product product2=builder2.getProduct();product2.show();}
上一篇Bash Shell 的管道命令下一篇正则表达式与文件格式处理-Linux(笔记)
顶0踩0
主题推荐猜你在找
查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
核心技术类目
可以以心感悟,以此沉淀,足矣;耳听佳音,目极美好,