一个电器工厂可以生产多种类型的电器,如海尔工厂可以生产海尔电视机、海尔空调等,TCL工厂可以生产TCL电视机,TCL空调等,相同品牌的电器构成一个产品族,而相同类型的电器构成了一个产品等级结构,现使用

简介: 该博客文章通过UML类图和Java源码示例,演示了如何使用抽象工厂模式模拟电器工厂生产不同品牌和类型的电器,如海尔和TCL的电视机和空调。

一个电器工厂可以生产多种类型的电器,如海尔工厂可以生产海尔电视机、海尔空调等,TCL工厂可以生产TCL电视机,TCL空调等,相同品牌的电器构成一个产品族,而相同类型的电器构成了一个产品等级结构,现使用

一个电器工厂可以生产多种类型的电器,如海尔工厂可以生产海尔电视机、海尔空调等,TCL工厂可以生产TCL电视机,TCL空调等,相同品牌的电器构成一个产品族,而相同类型的电器构成了一个产品等级结构,现使用抽象工厂模拟该场景。要求使用相关的工具绘制UML类图并严格按照类图的设计编写程序实现。

uml类图
在这里插入图片描述
源码:

package 抽象工厂实现电子器件;

public interface DianQiFactory {
    public Kongtiao createkongtiao();//抽象工厂
    public Tv createtv();

}

package 抽象工厂实现电子器件;

public interface Kongtiao {  //空调的抽象产品
    public void display();

}

package 抽象工厂实现电子器件;

public interface Tv {//电视的抽象产品
    public void display();

}

package 抽象工厂实现电子器件;

public class HairerFactory implements DianQiFactory {

    public Kongtiao createkongtiao() {   //海尔工厂生产海尔空调

        return new Hairer_Kong_Tiao();
    }

    public Tv createtv() {                  //海尔工厂生产海尔电视节
        return new Hairer_Tv();
    }

}

package 抽象工厂实现电子器件;

public class TvFactory implements DianQiFactory {

    @Override
    public Kongtiao createkongtiao() {
        // TODO 自动生成的方法存根
        return new Tcl_Kong_tiao();
    }

    @Override
    public Tv createtv() {
        // TODO 自动生成的方法存根
        return new Tcl_Tv();       
    }

}

package 抽象工厂实现电子器件;

public class Hairer_Kong_Tiao implements Kongtiao {

    @Override
    public void display() {
        // TODO 自动生成的方法存根
        System.out.println("海尔空调");

    }

}

package 抽象工厂实现电子器件;

public class Hairer_Tv implements Tv {

    @Override
    public void display() {
        // TODO 自动生成的方法存根
        System.out.println("海尔电视机");

    }

}

package 抽象工厂实现电子器件;

public class Tcl_Kong_tiao implements Kongtiao {

    @Override
    public void display() {
        // TODO 自动生成的方法存根
 System.out.println("TCL空调");
    }

}

package 抽象工厂实现电子器件;

public class Tcl_Tv implements Tv {


    public void display() {
        // TODO 自动生成的方法存根
        System.out.println("TCL电视机");

    }

}

package 抽象工厂实现电子器件;

public class Client {

    public static void main(String[] args) {
        // TODO 自动生成的方法存根

        DianQiFactory factory1, factory2; // 两个抽象工厂
        Kongtiao k1, k2; // 空调两个抽象产品
        Tv tv1, tv2; // 电视机两个抽象产品

        factory1 = new HairerFactory(); // factory1 为具体海尔工厂
        k1 = factory1.createkongtiao();
        tv1 = factory1.createtv();
        k1.display();
        tv1.display();

        factory2 = new TvFactory();// factory2位具体的TCL工厂
        k2 = factory2.createkongtiao();// 工厂创建空调
        tv2 = factory2.createtv();// 工厂创建电视机
        k2.display();
        tv2.display();

    }

}
AI 代码解读
目录
打赏
0
0
0
0
218
分享
相关文章
点晴PMS:港口码头管理的智能引擎,驱动效率革命
在全球贸易蓬勃发展的今天,港口码头作为连接世界的枢纽,正面临着效率提升和成本优化的双重挑战。点晴PMS港口码头管理系统,凭借其强大的核心功能和创新的管理理念,为港口码头企业提供了一站式解决方案,开启智慧运营的新篇章。
44 7
全国产化WLEC2可以应用在智能马桶上的医疗级心电模块
全国产化的WLEC2医疗级心电模块由唯理科技研发,专为ECG采集设计,符合医疗器械注册标准。适用于智能马桶与体脂秤,集成自研WL128芯片,支持24-bit高精度采样,内置32位单片机及优秀算法,实时输出心率与波形。搭配云端API,提供包括不规则心率检测、疲劳度评估等丰富的心脏健康分析。模块功耗低、集成度高,支持蓝牙和串口传输,易于集成。
基于ssm的一汽租车辆共享平台的设计与实现
基于ssm的一汽租车辆共享平台的设计与实现
85 1
未来已来!阿里云AIoT联合老板电器打造“未来工厂”
“未来工厂”是指将数字孪生、物联网、大数据、人工智能、工业互联网等技术广泛应用到工厂产销环节中,从而让这些工厂能实现智能化生产、智慧化管理、协同化制造等创新发展
5407 15
未来已来!阿里云AIoT联合老板电器打造“未来工厂”
小米战略入股TCL,大家电业务供应链获得强援
此次小米集团入股,无疑是双方在过去良好合作关系基础上的又一次升级,势必为整个家电行业注入创新与活力,惠及更多消费者及产业参与者。
462 0