zoukankan      html  css  js  c++  java
  • 详谈 Java工厂 --- 静态工厂 【简单工厂模式】

    1.前言

     什么是工厂模式?

      就是为了尽可能将代码的耦合度降低而产生的设计模式。

      这篇随笔讲解静态工厂的思路和具体操作。

    2.总结

    (1)静态工厂又称 简单 工厂模式 ,是最最简单的工厂模式。
    (2)优点:将控制创建对象的控制器交给了工厂,同时工厂在创建对象时还可以做一些其他业务,并将其集成在一起,可复用性高。
    (3)缺点:耦合度太高了,一一对应,如果多起来会比意大利面条还乱。

    3.操作

     

    (1)目录结构

      (2)建一个食物接口【规定了允许对食物的操作方法】

    View Code

    (3)两个食物接口的实现类【分别是苹果和面条】

    View Code
    View Code

    (4)工厂类

    package com.example.javabaisc.factory.staticfactory.factory;
    
    import com.example.javabaisc.factory.staticfactory.origin.Apple;
    import com.example.javabaisc.factory.staticfactory.origin.Food;
    import com.example.javabaisc.factory.staticfactory.origin.Noodles;
    
    public class FoodFactory {
    
        //获取苹果
        public static Food getApple() {
            return new Apple();
        }
    
        //获取面条
        public static Food getNoodles() {
            return new Noodles();
        }
    
    
    }
    View Code

    (5)测试类

    package com.example.javabaisc.factory.staticfactory;
    
    import com.example.javabaisc.factory.staticfactory.factory.FoodFactory;
    import com.example.javabaisc.factory.staticfactory.origin.Food;
    import org.junit.jupiter.api.Test;
    
    public class StFTest {
        @Test
        public void t() {
    
            //从工厂获取苹果
            Food food = FoodFactory.getApple();
            food.getFood();
            //
            //从工厂获取面条
            Food food2 = FoodFactory.getNoodles();
            food2.getFood();
    
        }
    
    }
    View Code

    (6)启动,打印结果

  • 相关阅读:
    215. Kth Largest Element in an Array
    214. Shortest Palindrome
    213. House Robber II
    212. Word Search II
    210 Course ScheduleII
    209. Minimum Size Subarray Sum
    208. Implement Trie (Prefix Tree)
    207. Course Schedule
    206. Reverse Linked List
    sql 开发经验
  • 原文地址:https://www.cnblogs.com/c2g5201314/p/13150198.html
Copyright © 2011-2022 走看看