一个电器工厂可以生产多种类型的电器,如海尔工厂可以生产海尔电视机、海尔空调等,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();

    }

}
相关文章
|
搜索推荐 安全 物联网
插座生产也要用机器人了?新国标加速插座行业进入智造时代
在今年的全国两会上,国务院总理李克强指出,要加快大数据、云计算、物联网应用,深入实施《中国制造 2025》。在《中国制造 2025》引导之下,越来越多的行业正在积极拥抱“智造时代”,不只是汽车、家电、重工、手机等主流制造业,就连插座这样的细分行业,都已迎来向“智造”发展的契机,这个契机就是插座行业新国家标准的执行。
153 0
插座生产也要用机器人了?新国标加速插座行业进入智造时代
|
数据采集 人工智能 供应链
如何在一年内建成一座 5G 智能制造工厂
智能制造是制造业加速数字化变革核心抓手。通过云计算、大数据、人工智能、物联网等数字技术与先进制造技术的深度融合,全面优化从研发、供应链、工厂运营到营销、销售、服务等各个环节,将提升企业的生产和运营效率,降低制造和维修成本,提高营销和服务体验。随着变革进一步进入“深水区”,这还将助力制造业实现高质量发展,甚至是商业模式创新和产业升级。
160 0
|
机器学习/深度学习 人工智能 机器人
这个双11,老板电器的工厂“黑灯”了
老板电器与阿里云等科技公司合作建设的这座智能工厂,整体生产效率较过去提高了45%,已成为制造行业数一数二的标杆,被浙江省评为首批“未来工厂”。
丰田研发智能汽车FV2,可利用肢体进行操控
该车采用智能交通系统(ITS)技术,可实现车辆与道路基础设施的网络互联,能提供包括十字路口盲点监测预警等各类安全信息。
411 0
|
传感器 自动驾驶 定位技术