总结:java设计模式之----抽象工厂
原创
©著作权归作者所有:来自51CTO博客作者wx604f04a92c6fd的原创作品,请联系作者获取转载授权,否则将追究法律责任
总结:也没有什么好说的,抽象的工厂是的类似的对象的创建归类,放到一个工厂去中去创建,举个例子:鼠标,有各种各样的品牌鼠标 键盘有各种个各样的品牌键盘.....
所以同一种品牌的产品当然是由同一品牌的工厂生产, 但是不同的品牌鼠标他们结构都是一样的,所以他们能继承同样的接口。。。。键盘是类似。。。
/**
* Created by chenxun on 2017/5/23.
*/
interface mouse { }
class mouse_A implements mouse{
mouse_A(){
System.out.println("create mouse a");
}
}
class mouse_B implements mouse{
mouse_B(){
System.out.println("create mouse b");
}
}
interface keyboard{ }
class keyboard_A implements keyboard{
keyboard_A(){
System.out.println("create keykoard a");
}
}
class keyboard_B implements keyboard{
keyboard_B(){
System.out.println("create keyboard b");
}
}
interface FactoryCenter{
public mouse create_mouse();
public keyboard create_keyboard();
}
class Factory1 implements FactoryCenter{
public mouse create_mouse(){
return new mouse_A();
}
public keyboard create_keyboard(){
return new keyboard_A();
}
}
class Factory2 implements FactoryCenter{
public mouse create_mouse(){
return new mouse_B();
}
public keyboard create_keyboard(){
return new keyboard_B();
}
}
public class abstract_factory {
public static void main(String[] args) {
Factory1 A = new Factory1();
A.create_mouse();
A.create_keyboard();
Factory2 B = new Factory2();
B.create_mouse();
B.create_keyboard();
}
}