Java设计模式之简单工厂设计模式

第一步:产品类

package Java设计模式.简单工厂设计模式;
/**
 * 简单工厂实现多种水果的管理
 */
public interface Fruit
{

        //吃
        void eat();

        //种
        void plant();
}
class Apple implements Fruit
{
        String name;
        public Apple() {
                super();
        }
        @Override
        public void eat() {
                System.out.println("苹果可以吃!");
        }
        @Override
        public void plant() {
                System.out.println("苹果可以种植!");
        }
}
class Banlanna implements Fruit
{
        String name;
        public Banlanna() {
                super();
        }
        @Override
        public void eat() {
                System.out.println("香蕉可以吃!!!!!!");
        }
        @Override
        public void plant() {
                System.out.println("香蕉可以种植!!!!!!");
        }
}

第二步:工厂类

package Java设计模式.简单工厂设计模式;
public class Factory {
    public Fruit getInfo(String type)
    {
        if(type=="苹果") {
            return new Apple();
        }
        if(type=="香蕉") {
            return new Banlanna();
        }
        return null;
    }
}

第三步:测试类

package Java设计模式.简单工厂设计模式;
public class Test {
    public static void main(String[] args) {
        Factory factory=new Factory();
        //向上转型
        Fruit fruit=factory.getInfo("苹果");
        fruit.eat();
        fruit.plant();
        System.out.println("%%%%%%%%%%%%%%%%%%%%%%%%");
        Fruit fruit1=factory.getInfo("香蕉");
        fruit1.plant();
        fruit1.eat();
    }
}

猜你喜欢

转载自blog.csdn.net/weixin_43562705/article/details/89438090