抽象工厂模式
来源:互联网 发布:amd显卡对什么优化好 编辑:程序博客网 时间:2024/06/02 02:36
首先,我们新建了一个Car类,一个AK47类,还有一个Apple类。
package cn.edu.ustc.dp.factory.abstractFactory;public class Car {public void run(){System.out.println("冒着烟跑");}}
package cn.edu.ustc.dp.factory.abstractFactory;public class AK47 {public void shoot(){System.out.println("哒哒哒。。。");}}
package cn.edu.ustc.dp.factory.abstractFactory;public class Apple {public void PrintName(){System.out.println("apple");}}
然后我们新建一个用户测试类,他有一辆车,一把AK47,一个苹果。
package cn.edu.ustc.dp.factory.abstractFactory;public class Test {public static void main(String[] args) {Car c = new Car();c.run();AK47 ak = new AK47();ak.shoot();Apple a = new Apple();a.PrintName();}}
这里的车,AK47,苹果都是分别new出来的,如果我们想要一次性的定制这些东西就需要用到抽象工厂模式。
首先,我们想到要新建一个工厂,取名为DefaultFactory.
package cn.edu.ustc.dp.factory.abstractFactory;public class DefaultFactory {public Car createCar(){return new Car();}public AK47 createAK47(){return new AK47();}public Apple createApple(){return new Apple();}}
这样的话我们的用户测试类就可以改成这样:
package cn.edu.ustc.dp.factory.abstractFactory;public class Test {public static void main(String[] args) {DefaultFactory f = new DefaultFactory();Car c = f.createCar();c.run();AK47 ak = f.createAK47();ak.shoot();Apple a = f.createApple();a.PrintName();}}
- 工厂模式 -- 抽象工厂
- 工厂模式-抽象工厂
- 工厂模式-抽象工厂
- 工厂模式/抽象工厂模式
- 工厂模式&&抽象工厂模式
- 工厂模式---抽象工厂模式
- 工厂模式&抽象工厂模式
- 工厂模式,抽象工厂模式
- 【模式】抽象工厂模式
- 简单工厂、工厂模式、抽象工厂模式
- 简单工厂、工厂模式、抽象工厂模式
- 简单工厂&工厂模式&抽象工厂模式
- 工厂方法,抽象工厂模式
- 2,工厂模式--抽象工厂
- C#工厂模式-抽象工厂
- 工厂模式与抽象工厂
- 抽象工厂设计模式
- 抽象工厂模式
- Oracle查询表空间使用情况
- APK反编译
- struts小知识点
- c++ stl string 常用函数
- Android手机听筒和扬声器切换
- 抽象工厂模式
- 计算机网络--面向连接的服务和无连接服务
- 河南理工大学程序设计(ACM)大赛解题报告
- Java7新特性(四)并发 1 不可变对象及构造器
- iptables match 扩展
- 人工神经网络与字符分割及识别
- 零点起飞学Java
- 24BIT 音乐
- PS下的遥感图像修图