美文网首页
2、2种工厂模式

2、2种工厂模式

作者: lois想当大佬 | 来源:发表于2019-12-16 11:39 被阅读0次

定义:建立创建对象的工厂
用途:创建对象

一、工厂模式一
思想:
1、工厂接口类
2、工厂实现类
3、产品接口类
4、产品实现类


1、工厂接口类

    public interface Factory
    {
        Car CreateCar();
    }



2、工厂实现类

  public class SportFactory implements IFactory
    {
        public Car CreateCar()
        {
            return new SportCar();
        }
    }

    public class JeepFactory implements IFactory
    {
        public Car CreateCar()
        {
            return new JeepCar();
        }
    }



3、产品接口类

public interface Car
    {
        void GetCar();
    }



4、产品实现类

public class SportCar implements Car
    {
        public void GetCar()
        {
            System.out.println("场务把跑车交给范·迪塞尔");
        }
    }

    public class JeepCar implements Car
    {
        public void GetCar()
        {
            System.out.println("场务把越野车交给范·迪塞尔");
        }
    }



5、客户端

public class client {

    public static void main(String[] args) {
            Factory factory = new SportFactory();
            Car car = factory.CreateCar();
            car.GetCar(); // 场务把跑车交给范·迪塞尔
    }
}

二、工厂模式二
Spring 中的 IoC 的实现原理,就是工厂模式加反射机制
思想:
1、工厂类
3、产品接口类
4、产品实现类

// 产品接口类
interface Fruit {

     public abstract void eat();
     
}

// 产品实现类
class Apple implements Fruit {

    public void eat(){
        System.out.println("Apple");
    }
    
}
// 产品实现类
class Orange implements Fruit {
    public void eat(){
        System.out.println("Orange");
    }
}

// 工厂类
class Factory {

    public static Fruit getInstance(String className) {
        Fruit f = null;
        try {
            f = (Fruit) Class.forName(className).newInstance();
        } catch (Exception e) {
            e.printStackTrace();
        }
        return f;
    }
    
}

// 客户端
class Client {

    public static void main(String[] args) {
        Fruit f = Factory.getInstance("io.github.dunwu.spring.Apple");
        if(f != null){
            f.eat();
        }
    }
    
}



上一篇:静态代理模式

相关文章

  • Java设计模式——Factory工厂模式

    Factory工厂模式分为:1)简单工厂模式(Simple Factory) --- 普通工厂模式2)工厂方法模式...

  • 设计模式-工厂模式

    1、简单工厂模式 2、工厂方法模式 3、抽象工厂模式

  • 设计模式 工厂模式

    工厂模式 工厂模式三大类1、简单工厂模式(静态工厂方法模式)2、工厂方法模式3、抽象工厂模式(Kit模式) 简单工...

  • iOS知识点整理

    一、工厂模式 1、简介 2、简单工厂模式 2、抽象工厂模式 二、Swift与Objective_C

  • php设计模式之工厂模式

    1. 工厂模式分类 工厂模式具体可分为三类模式:简单工厂模式,工厂方法模式,抽象工厂模式; 2. 简单工厂模式 又...

  • 设计模式-工厂模式

    设计模式1 设计模式2 工厂模式 工厂模式可简单的分为三类:简单工厂,工厂方法,抽象工厂 简单工厂模式 定义 简单...

  • 设计模式之工厂模式

    1.简单工厂模式 2.抽象工厂模式

  • Java中的工厂模式

    1.简单工厂模式 2.常规工厂模式

  • Go语言设计模式(2)工厂模式

    Go语言设计模式(2)工厂模式 工厂模式的定义 工厂模式的定义如下: Define an interface fo...

  • 工厂模式

    目录 1、工厂模式概念 2、工厂模式的意图 3、什么情况下适合工厂模式 4、工厂模式的设计思想 5、工厂模式的应用...

网友评论

      本文标题:2、2种工厂模式

      本文链接:https://www.haomeiwen.com/subject/fsirnctx.html