有一个OEM制造商代理做HP笔记本电脑(Laptop),后来该制造商得到了更多的品牌笔记本电脑的订单Acer,Lenovo,Dell,该OEM商发现,如果一次同时做很多个牌子的本本,有些不利于管理。利用工厂模式改善设计,用JAVA语言实现 (或C#控制台应用程序实现)该OEM制造商的工厂模式。绘制该模式的UML图。
【模式UML图】
【代码】
/**
* ClassName Main
* Description
*
* @author 石都林
* @date 2021/6/17 9:03
* Version 1.0
*/
public class Main {
private final static LevonoFactory LENOVO = new LevonoFactory();
private final static DellFactory DELL = new DellFactory();
private final static AcerFactory ACER = new AcerFactory();
public static void main(String[] args) {
LENOVO.getComputerType().computerType();
DELL.getComputerType().computerType();
ACER.getComputerType().computerType();
}
}
interface Computer {
abstract void computerType();
}
interface ComputerFactory {
abstract Computer getComputerType();
}
class Lenovo implements Computer{
@Override
public void computerType() {
System.out.println("computer type is Lenovo!");
}
}
class Dell implements Computer{
@Override
public void computerType() {
System.out.println("computer type is dell!");
}
}
class Acer implements Computer{
@Override
public void computerType() {
System.out.println("computer type is Acer!");
}
}
class AcerFactory implements ComputerFactory{
@Override
public Computer getComputerType() {
return new Acer();
}
}
class DellFactory implements ComputerFactory{
@Override
public Computer getComputerType() {
return new Dell();
}
}
class LevonoFactory implements ComputerFactory{
@Override
public Computer getComputerType() {
return new Lenovo();
}
}
【运行截图】