public interface CPU {
public void product();
}
public class MacCPU implements CPU {
public void product(){
System.out.println("MacCPU is producting....");
}
}
public class PcCPU implements CPU {
public void product(){
System.out.println("PcCPU is producting...");
}
}
public interface RAM {
public void product();
}
public class PcRAM implements RAM {
public void product(){
System.out.println("PcRAM is producting...");
}
}
public class MacRAM implements RAM {
public void product(){
System.out.println("MacRAM is producting...");
}
}
public interface AbstractFactory {
public CPU productCPU();
public RAM productRAM();
}
public class PcFactory implements AbstractFactory {
public CPU productCPU(){
return new PcCPU();
}
public RAM productRAM(){
return new PcRAM();
}
}
public class MacFactory implements AbstractFactory {
public CPU productCPU(){
return new MacCPU();
}
public RAM productRAM(){
return new MacRAM();
}
}
doc = builder.parse(new File("Design/src/创建型/Abstract/config.xml"));
< config >
< className >创建型.Abstract.MacFactory</ className >
< /config>
public class Client {
public static void main(String[] args) {
try {
System.out.println("软件设计模式实验||软件2014班||延月刚||2020007218");
AbstractFactory factory;
CPU cpu;
RAM ram;
factory = (AbstractFactory) XMLUtil.getBean();
cpu = factory.productCPU();
ram = factory.productRAM();
cpu.product();
System.out.println("-------------");
ram.product();
}catch (Exception e){
System.out.println(e.getMessage());
}
}
}