Cool
Cool
Published on 2022-04-11 / 48 Visits
0
0

工厂方法模式(java)

工厂接口

public interface MyFactory {
    public Product product();
}

产品接口

public interface MyFactory {
    public Product product();
}

具体工厂1

public class ClothFactory implements MyFactory {

    @Override
    public Product product() {
        return new ClothProduct();
    }
}

具体工厂2


public class JuiceFactory implements MyFactory {

    @Override
    public Product product() {
        return new JuiceProduct();
    }
}

具体产品1


public class ClothProduct implements Product {

    @Override
    public void show() {
        System.out.println("生产了衣服");
    }
}

具体产品2

public class JuiceProduct implements Product {
    public void JuiceFactory(){

    }
    @Override
    public void show() {
        System.out.println("生产了果汁");
    }
}

运行

package com.liang.test;

import com.liang.fctest.MyFactory;

public class FactoryTest {
    public static void main(String[] args) throws ClassNotFoundException, InstantiationException, IllegalAccessException {

        Class<?> FactoryTest = Class.forName("com.liang.fctest.JuiceFactory");
        MyFactory factory = (MyFactory) FactoryTest.newInstance();
        factory.product().show();

    }
}

结果

Snipaste_2022-04-11_11-44-07.png

代码

fctest.zip


Comment