简单工厂模式

xiaoxiao2021-02-28  96

所谓工厂,就是用来生产产品的地方,使用简单工厂模式的好处就是可以不用去实例化具体类,比如你有bird类,duck类,如果你要使用其中的方法,那么你就要去实例化所有的类才能去调用,这样不易于扩展。如果我们直接抽象出一个类,里面有fly、speak,walk等方法,这样做起来岂不是很方便,请看如下代码:

//这个就是简单工厂抽象类

package com.hy.simple_factory; public abstract class Animal { public void fly(){}; public void speak(){}; public void walk(){}; }

//具体实现类(bird类)

package com.hy.simple_factory; public class Bird extends Animal{ @Override public void fly() { System.out.println("bird is fly"); } }

//具体实现类(duck类)

package com.hy.simple_factory; public class Duck extends Animal{ @Override public void speak() { System.out.println("duck is speak"); } }

//简单工厂测试类

package com.hy.simple_factory; public class SimpleFactoryModel { private Animal animal = null; public Animal test(String opration) { if ("duck".equals(opration)) { animal = new Duck(); animal.speak(); } else if ("bird".equals(opration)) { animal = new Bird(); animal.fly(); } return animal; } }

转载请注明原文地址: https://www.6miu.com/read-71290.html

最新回复(0)