简单工厂方法并不属于真正的设计模式
首先创建所有鸟类的祖先类
package com.simplyFactory;
public interface Bird {
public void fly();
public void sing();
}
创建两个实现类Eagle和Dove
package com.simplyFactory;
public class Eagle implements Bird {
public void fly() {
System.out.println("I am eagle, I can fly high");
}
public void sing() {
System.out.println("I can sing loud");
}
}
package com.simplyFactory;
public class Dove implements Bird {
public void fly() {
System.out.println("I am a dove, I can fly");
}
public void sing() {
System.out.println("I am a dove , I can't sing");
}
}
定义简单鸟类工厂SimpleBirdFactory
package com.simplyFactory;
public class SimpleBirdFactory {
public static Bird createBird(String type) {
Bird bird = null;
if (type.equals("dove")) {
bird = new Dove();
} else if (type.equals("eagle")) {
bird = new Eagle();
}
return bird;
}
}
编写测试程序
package com.simplyFactory;
public class testFactory {
public static void main(String[] args) {
Bird dove = SimpleBirdFactory.createBird("dove");
dove.fly();
dove.sing();
Bird eagle = SimpleBirdFactory.createBird("eagle");
eagle.fly();
eagle.sing();
}
}
总结
1.工厂方法可以静态,也可以非静态,用静态的话不需要实例化一个工厂
2.简单工厂封装了具体实现
分享到:
相关推荐
工厂方法模式之所以可以解决简单工厂的模式,是因为它的实现把具体产品的创建推迟到子类中,此 时工厂类不再负责所有产品的创建,而只是给出具体工厂必须实现的接口,这样工厂方法模式就可以允许 系统不修改工厂类...
请用Java面向对象语言,利用简单工厂模式,实现简易计算器程序(加减乘除功能)。 在注释中回答以下问题: 1、 软件设计目标分别是什么? 2、 在相应的代码处解释设计目标实现的方式。
只实现了简单四则运算,简单工厂模式实现,可扩展性很强,增加其他运算,只需改动较小部分!
通过抽象类中的抽象方法实现简单工厂模式。
包含两个zip文件夹calculatorConsole.zip和calculatorConsole2.zip,...还增加了异常处理,以及运用了“简单工厂设计模式”,代码的灵活性、扩展性、复用性、维护性都很好,可以很方便的移植到需要GUI的计算器实现中。
用工厂方法模式重构简易计算器。界面要求:模仿windows操作系统附件中的计算器样式进行设计,要设计基本的菜单项(快捷键、热键、和分割线等)。功能要求:实现基本计算功能
利用简单工厂的设计模式,继承,封装,多态的方式完成的计算器
此计算器是使用工厂模式实现的简单的加减乘除程序
工厂方法模式,主要是利用反射机制获取配置文件的信息,用户可以在不知道如何生产对象的情况下获取对象。包括源代码和文档(文档在本博客的文档说明中)。
里面包含两种方法实现的简单工厂模式完整代码,供大家参考
这是一个简单的java工厂模式实现 本人第一次发资源 请多批评
简单工厂模式的C++、Java实现代码。
java抽象工厂模式实现热带工厂,生产水果等等。比较简单的一个程序。
设计模式里面工厂方法的实现,有代码,有截图,有类图
NULL 博文链接:https://jacky-dai.iteye.com/blog/2296369
设计模式PHP版:简单工厂模式实例。 以计算器的实现为实例,说明了简单工厂模式的实现方法。
抽象工厂模式的简单实现,代码里面有详细的注释,可供初学者学习,有不懂的地方大家可以相互交流
简单工厂模式的C语言实现。改写自http://blog.csdn.net/sx_wpc/article/details/7645062一文的代码。
简单工厂 iOS的实现
工厂模式就是专门负责将大量有共同接口的类实例化,而且不必事先知道每次是要实例化哪一个类的模式。它定义一个用于创建对象的接口,由子类决定实例化哪一个类。