23种设计模式学习之建造者模式
声明接口
public interface Animal {
void run();
}
实现类一
public class Bird implements Animal {
public void run() {
System.out.println("飞着跑");
}
}
实现类二
public class Worm implements Animal {
public void run() {
System.out.println("趴着跑");
}
}
建造者类
public class Builder {
private List<Animal>list=new ArrayList<>();
public List<Animal> createWorm(Integer count){
for (int i=0;i<count;i++){
list.add(new Worm());
}
return list;
}
public List<Animal> createBird(Integer count){
for (int i=0;i<count;i++){
list.add(new Bird());
}
return list;
}
}
实例
public class Demo {
public static void main(String[] args) {
Builder builder=new Builder();
List<Animal> bird = builder.createBird(2);
}
}
建造者模式将很多功能集成到一个类里,这个类可以创造出比较复杂的东西。所以与工程模式的区别就是:工厂模式关注的是创建单个产品,
而建造者模式则关注创建符合对象,多个部分。因此,是选择工厂模式还是建造者模式,依实际情况而定

浙公网安备 33010602011771号