一个电器工厂可以生产多种类型的电器,如海尔工厂可以生产海尔电视机、海尔空调等,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 {@Overridepublic Kongtiao createkongtiao() {// TODO 自动生成的方法存根return new Tcl_Kong_tiao();}@Overridepublic Tv createtv() {// TODO 自动生成的方法存根return new Tcl_Tv(); }}package 抽象工厂实现电子器件;public class Hairer_Kong_Tiao implements Kongtiao {@Overridepublic void display() {// TODO 自动生成的方法存根System.out.println("海尔空调");}}package 抽象工厂实现电子器件;public class Hairer_Tv implements Tv {@Overridepublic void display() {// TODO 自动生成的方法存根System.out.println("海尔电视机");}}package 抽象工厂实现电子器件;public class Tcl_Kong_tiao implements Kongtiao {@Overridepublic 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();}}
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
