栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java设计模式之工厂模式(工厂方法模式)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java设计模式之工厂模式(工厂方法模式)

概要

工厂模式的出现是为了解决简单工厂模式中,不方便扩展的问题

工厂模式创建了一个抽象工厂类(接口)

工厂模式为每一个具体的产品都创建了单独的工厂类

 特点

优点:在添加新的产品类时,不需要在修改工厂类中的代码,更加灵活

缺点:如果要增加新的产品,则需要多增加一个独立的产品工厂和产品类,代码量增加

工厂模式的实现如下:

public class FactoryMode {
    public static void main(String[] args) {
       
        
        Factory factory = new TigerFactory();
        
        Animal animal = factory.createInstance();
        animal.say();
    }
}

abstract class Animal{
    abstract void say();
}

class Tiger extends Animal
{
    void say() {
        System.out.println("this is tiger saying...");
    }
}

class Lion extends Animal
{
    void say() {
        System.out.println("this is Lion saying...");
    }
}


interface Factory
{
    public Animal createInstance();
}

class TigerFactory implements Factory
{
    public Animal createInstance() {
        return new Tiger();
    }
}

class LionFactory implements Factory
{
    public Animal createInstance() {
        
        return new Lion();
    }
}

 这里还有一点疑惑,如果这样设计的话,可不可以直接把工厂类去掉,直接申明子类工厂类去创建对象不是更加便捷嘛,先填个坑,后期再补。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/871453.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号