栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

抽象工厂模式

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

抽象工厂模式

工厂模式

工厂方法模式(Fatory Method Pattern)

提供一个接口,一个可创建一系列相关对象的。无需指定他们的具体类。

一个抽象工厂类,不同的具体工厂产生不同的对象实体。

eg: 冰箱(抽象工厂类) 美的冰箱(实体工厂类) 海尔冰箱(实体工厂类)

eg:
项目结构示意

抽象产品接口:

public interface INote {

     void   doNote();
}


public interface IVideo {

    void doVideo();

}

抽象工厂接口–(生产产品)

public interface ICourseFactory {

    
    INote createNote();

    
    IVideo createVideo();
}

java产品组的产品实现

public class JavaNote implements INote {
    @Override
    public void doNote() {
        System.out.println("==========java课程做笔记");
    }
}


public class JavaVideo implements IVideo {
    @Override
    public void doVideo() {
        System.out.println("================java课程下视频观看");
    }
}

python产品组的产品实现

public class PythonNote implements INote {
    @Override
    public void doNote() {
        System.out.println("======python课程下---做笔记");
    }
}


public class PythonVideo implements IVideo {
    @Override
    public void doVideo() {
        System.out.println("==========python课程下--看视频");
    }
}

产品组实现产品创建

public class JavaCourseFactory implements ICourseFactory {

    @Override
    public INote createNote() {
        return new JavaNote();
    }

    @Override
    public IVideo createVideo() {
        return new JavaVideo();
    }
}



public class PythonCourseFactory implements ICourseFactory {
    @Override
    public INote createNote() {
        return new PythonNote();
    }

    @Override
    public IVideo createVideo() {
        return new PythonVideo();
    }
}

测试输出

public class TestDemo {
    public static void main(String[] args) {
        //父类类型的子类对象--创建工厂实体
        ICourseFactory iCourseFactory = new JavaCourseFactory();
        //创建产品对象并调用具体的产品方法
        iCourseFactory.createNote().doNote();
        iCourseFactory.createVideo().doVideo();
    }
}

测试结果

==========java课程做笔记
================java课程下视频观看

完整输出java产品组下的产品。

类关系图示



–END

暑期编程PK赛 得CSDN机械键盘等精美礼品!
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1017459.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号