Java设计模式之抽象工厂模式浅析讲解
1.介绍
当系统准备为用户提供一系列相关对象,又不想让用户代码和这些对象形成耦合时,就可以使用抽象工厂模式。
2.如何实现
1)抽象产品--Car
2)具体产品--BYDCar、TSLCar
3)抽象工厂Factory
4)具体工厂--BYDFactory、TSLFactory
3.代码实现
/** * 抽象产品 */public abstract class Car {public abstract String getName(); }
/** * 具体产品 */public class BYDCar extends Car {String name; public BYDCar(String name){this.name = name; }@Overridepublic String getName() {return name; }}
/** * 抽象工厂 */public abstract class CarFactoty {public abstract Car createCar(String name); }
/** * 具体工厂 */public class BYDFactory extends CarFactoty {@Overridepublic BYDCar createCar(String name) {return new BYDCar(name); }}
4.总结 1)抽象工厂模式可以为用户创建一系列相关的对象,是用户和这些类的对象解耦
2)使用抽象工厂模式可以方便的为用户配置一些列对象。
【Java设计模式之抽象工厂模式浅析讲解】3)在抽象工厂模式中,可以随时增加“具体工厂”为用户提供一组相关的对象。
如:是上面的例子中,如果用户需要一特斯拉车,创建一个特斯拉对象和特斯拉工厂就能完成。
/** * 具体产品 */public class TSLCar extends Car {String name; public TSLCar(String name){this.name = name; }@Overridepublic String getName() {return name; }}
/** * 具体工厂 */public class TSLFactory extends CarFactoty {@Overridepublic TSLCar createCar(String name) {return new TSLCar(name); }}
到此这篇关于Java设计模式之抽象工厂模式浅析讲解的文章就介绍到这了,更多相关Java抽象工厂模式内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
推荐阅读
- Java设计模式之代理模式与@Async异步注解失效的解决
- Java代理模式的示例详解
- 舒心之旅
- 产品工作中的一些小小体验之——|产品工作中的一些小小体验之—— 怎样更好地了解你的用户
- Java设计模式之装饰模式详解
- Java|Java Agent (代理)探针技术详情
- 太阳花的微商之路
- 日常错误|postman能正常请求但java程序请求返回400
- 薛之谦复合(爱不该是失而复得,而是彼此从未离开)
- 投稿|暑期剧综招商全梳理:四个趋势看“金主”之变