zoukankan      html  css  js  c++  java
  • (设计模式)抽象工厂

    设计模式,本身就是一种概念,一种设计思维,每个人的理解方式不同,感悟也不同。结合需求和代码的设计结构去灵活运用,以下和其他章节只是个人领悟和简单demo,共勉。
    提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类,实际实现类由工厂创建并提供。
    行为接口
    public interface ICat {
    
        void eat();
    }

    public interface IDog {
    
        void eat();
    }

    实现

    public class BlackCat implements ICat{
    
        @Override
        public void eat() {
            System.out.println("黑色的猫");
        }
    
    }
    public class WhiteDog implements IDog {
    
        @Override
        public void eat() {
            System.out.println("白色的狗");
        }
    
    }

    创建产品接口 ,抽象工厂

    /**
     * 创建抽象产品对象的操作接口
     * @author Administrator
     *
     */
    public interface IAnimalFactory {
        ICat createCat();
        IDog createDog();
        
    }

    实现

    /**
     *抽象工厂,用于管理要实例化哪些对象
     * @author Administrator
     *
     */
    public class AnimalFactory implements IAnimalFactory {
    
        @Override
        public ICat createCat() {
            return new BlackCat();
        }
    
        @Override
        public IDog createDog() {
            return new WhiteDog();
        }
    
    }

    测试

    public static void main(String[] args) {
            IAnimalFactory factory = new AnimalFactory();
            ICat cat = factory.createCat();
            IDog dog = factory.createDog();
            cat.eat();
            dog.eat();
        }
  • 相关阅读:
    第二十一天作业
    第二十天:继承
    第二十天作业
    第十六天
    第十九天作业
    day53
    day52
    day51
    day50
    day44
  • 原文地址:https://www.cnblogs.com/xiaohuihui96/p/7115062.html
Copyright © 2011-2022 走看看