比如我们经常在游戏中需要对游戏人物进行绘制,每个角色都是不同的样子,但是绘制的过程却是相同的。这里我们发现每个对象的创建过程都是一样的,但是每个对象的具体细节却是不一样的。我们把这样情况描述为复杂对象的构造方式与对象的具体表现分离,是的具有相同构造的对象可以有不同的表示。
实例:
结果:
代码如下:
public class test
{
public static void main(String args[])
{
User u=new User();
u.show();
}
}
class User {
public Builder builder1;
void show()
{
builder1=new drinkBuilder();
builder1.create();
builder1.show();
}
}
class drink {
public String name;
public drink(String name)
{
this.name=name;
}
}
class drinkBuilder extends Builder {
public drink drink1;
public void create() {
drink1=new drink("drink");
}
public void show() {
System.out.println(drink1.name);
}
}
abstract class Builder {
abstract public void create() ;
abstract public void show() ;
}
2016-8-7
1:54