设计模式一:工厂方法

来源:互联网 发布:mac适配鼠标推荐 编辑:程序博客网 时间:2024/04/30 08:09

模式介绍:避免手动去New多个对象,根据产品类型或者其他参数生产一系列具有相同接口的对象实例。

适用场景:生产相同接口不同系列产品,获取同一类型多个不同实例。

类图:


代码:

public class FactoryMethod_1 {


/**
* 生产系列产品
*/
public static void main(String[] args) {
Car benz = Factory.create(Benz.class);
Car ford = Factory.create(Ford.class);
benz.run();
benz.stop();
ford.run();
ford.stop();
}


}


class Factory{
public static Car create(Class<?> clazz){
Car car = null;
try {
car = (Car) clazz.newInstance();
} catch (Exception e) {
System.out.println("Can not create " + clazz.getName());
}
return car;
}
}


interface Car{
void run();
void stop();
}


class Benz implements Car{


@Override
public void run() {
System.out.println("Benz Is Run...");
}

@Override
public void stop() {
System.out.println("Benz Is Stop...");
}

}


class Ford implements Car{


@Override
public void run() {
System.out.println("Ford Is Run...");
}

@Override
public void stop() {
System.out.println("Ford Is Stop...");
}

}

0 0
原创粉丝点击