黑马程序——工厂模式

来源:互联网 发布:光大证券官网 软件 编辑:程序博客网 时间:2024/05/10 22:17
从设计模式的类型上来说,简单工厂模式是属于创建型模式,又叫做静态工厂方法(Static Factory Method)模式,简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例。
简单工厂模式的实质是由一个工厂类根据传入的参数,动态决定应该创建哪一个产品类(这些产品类继承自一个父类或接口)的实例。
该模式中包含的角色及其职责:
工厂(Creator)角色
简单工厂模式的核心,它负责实现创建所有实例的内部逻辑。工厂类可以被外界直接调用,创建所需的产品对象。
抽象产品(Product)角色
简单工厂模式所创建的所有对象的父类,它负责描述所有实例所共有的公共接口。
具体产品(Concrete Product)角色
是简单工厂模式的创建目标,所有创建的对象都是充当这个角色的某个具体类的实例。
下面是一个简单工厂模式的例子,它要求用户输入一个品牌然后由工厂生产并输出:
首先,我声明一个父类Notebook类,它用abstract修饰,含有一个自动属性Brand,和一个抽象方法。

其次,声明四个子类都继承于NoteBook这个父类,而且showbrand()方法都用override修饰。

 然后,我们可以定义一个方法,用来接收牌子,并返回给工厂。值得注意的是此方法的返回值类型是notebook。

原创粉丝点击