• 简单工厂模式SimpleFactory


    简单工厂模式是属于创建型模式,简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例。简单工厂模式是工厂模式家族中最简单实用的模式,可以理解为是不同工厂模式的一个特殊实现。

    package com.taobao.design;
    
    /**
     * 简单工厂模式:创建型
     */
    public class SimpleFactory {
        public static void main(String[] args) {
            try {
                MusicFactory.createBox("Pianobox").play();
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }
    /**
     * 生产接口
     */
    interface IMusicBox{
        public void play();
    }
    
    class Pianobox implements IMusicBox{
    
        @Override
        public void play() {
            System.out.println("Pianobox播放");
        }
    }
    
    class ViolinBox implements IMusicBox{
    
        @Override
        public void play() {
            System.out.println("ViolinBox播放");
        }
    }
    /**
     * 工厂类
     */
    class MusicFactory{
        public static IMusicBox createBox(String name) throws Exception{
            return (IMusicBox) Class.forName("com.taobao.design."+name).newInstance();
        }
    }

    简单工厂模式的优点:

    工厂类是整个模式的关键.包含了必要的逻辑判断,根据外界给定的信息,决定究竟应该创建哪个具体类的对象.通过使用工厂类,外界可以从直接创建具体产品对象的尴尬局面摆脱出来,仅仅需要负责“消费”对象就可以了。而不必管这些对象究竟如何创建及如何组织的.明确了各自的职责和权利,有利于整个软件体系结构的优化。

    简单工厂模式的缺点:

    当系统中的具体产品类不断增多时候,可能会出现要求工厂类根据不同条件创建不同实例的需求.这种对条件的判断和对具体产品类型的判断交错在一起,很难避免模块功能的蔓延,对系统的维护和扩展非常不利

  • 相关阅读:
    Java calendar类学习笔记
    Anaconda 学习笔记
    第八周作业
    第七次作业
    第六周作业
    第五次作业
    用户调研方法之焦点小组
    第三周作业
    软件工作量的评估方法有哪些
    软件质量保证与测试(--作业--)
  • 原文地址:https://www.cnblogs.com/hnhcc39/p/2604568.html
Copyright © 2020-2023  润新知