Java 工厂模式
抽象一个基类的接口
interface Drink{public void drink();} //定一个抽象方法
定义实际的产品的类,实现接口,Beer和Milk类
class Milk implements Drink{ public void drink() {System.out.println("喝牛奶");} } class Beer implements Drink{ public void drink() {System.out.println("喝啤酒");} } 覆写接口的方法,具体的产品有个字的功能
定义工厂类,根据需求,实现对象
class DrinkFactory{ static Drink getInstance(String str) { if(str.equals("milk")) { return new Milk(); }else if(str.equals("beer")) { return new Beer(); } return null; } }
进行测试
public class Text{ public static void main(String[] args) { Drink d=DrinkFactory.getInstance("milk"); d.drink(); Drink b=DrinkFactory.getInstance("beer"); b.drink(); } }
Milk Beer 实现 Drink接口,所以向上自动转向
多态实现了参数的统一
运行结果


浙公网安备 33010602011771号