zoukankan      html  css  js  c++  java
  • 抽象工厂模式

    抽象工厂模式:提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。以下是例子:

    //创建黑色动物的工厂 

    public class BlackAnimalFactory implements IAnimalFactory{  

    public ICat createCat() {

    return new BlackCat(); }

    public IDog createDog() {

    return new BlackDog(); } }

     //创建白色动物的工厂

    public class WhiteAnimalFactory implements IAnimalFactory{  

    public ICat createCat() {

    return new WhiteCat(); }

    public IDog createDog() {

    return new WhiteDog(); } }

    //黑猫创建 

    public class BlackCat implements ICat{

    public void eat() {
    System.out.println("The black cat is eating!");
    }
    }

    //白狗创建

    public class WhiteDog implements IDog{  

    public void eat() {

    System.out.println("The white dog is eating!"); } }

    //测试类

    public class Test {  

    public static void main(String[] args) {

    IAnimalFactory blackAnimalFactory = new BlackAnimalFactory();

    ICat blackCat = blackAnimalFactory.createCat();

    blackCat.eat();

    IDog blackDog = blackAnimalFactory.createDog();

    blackDog.eat();

    IAnimalFactory whiteAnimalFactory = new WhiteAnimalFactory();

    ICat whiteCat = whiteAnimalFactory.createCat();

    whiteCat.eat();

    IDog whiteDog = whiteAnimalFactory.createDog();

    whiteDog.eat(); } }

  • 相关阅读:
    bzoj1059: [ZJOI2007]矩阵游戏
    NEW
    bzoj2438: [中山市选2011]杀人游戏
    bzoj4554: [Tjoi2016&Heoi2016]游戏 二分图匹配
    【高精度】模板 (C++)
    【BZOJ4025】二分图 LCT
    读入/输出模板
    一些 Markdown 语法
    题解 P3732 [HAOI2017]供给侧改革
    题解 CF1598A Computer Game
  • 原文地址:https://www.cnblogs.com/lee0oo0/p/2526489.html
Copyright © 2011-2022 走看看