前言:
在学习 了简单工厂模式和工厂方法模式后,可以进一步推导得到抽象工厂模式。前两者可以查看名为“设计模式之简单工厂模式01”和“设计模式之工厂方法模式02”的博客~
目录
(1).定义按钮接口(Button)和文本框接口(Text)
(2).分别定义Windows、Linux、Unix三种操作系统下的具体产品实现上述两个接口(Button 、Text)
1.Windows下的WindowsButton类和WindowsText类
2.Linux下的LinuxButton类和LinuxText类
(4).分别定义具体工厂WindowsFactory、LinuxFactory、UnixFactory,实现上述抽象工厂类Factory
1.概念说明:
抽象工厂模式:提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。
两个概念:
产品等级结构:产品的继承结构
产品族:由同一工厂生产的位于不同产品等级结构中的一组产品
2.题目简述:
使用抽象工厂模式,实现在不同操作系统下的 不同风格的菜单栏。
3.模拟实现:
(1).定义按钮接口(Button)和文本框接口(Text)
(2).分别定义Windows、Linux、Unix三种操作系统下的具体产品实现上述两个接口(Button 、Text)
1.Windows下的WindowsButton类和WindowsText类
2.Linux下的LinuxButton类和LinuxText类
3.Unix下的UnixButton类和UnixText类
(3).定义一个抽象工厂类Factory
(4).分别定义具体工厂WindowsFactory、LinuxFactory、UnixFactory,实现上述抽象工厂类Factory
1.WindowsFactory类
2.LinuxFactory类
3.UnixFactory类
(5).定义客户端测试类
(6).运行结果