黑马程序员技术交流社区

标题: 分享工厂设计模式 [打印本页]

作者: 不安分的程序猿    时间: 2016-5-30 01:57
标题: 分享工厂设计模式
/**
* 工厂方法模式:
*         优点:
*                 不需要更改已经存在的代码
*         缺点:
*                 代码量大
*
*/
public class Demo03_Factory {

        public static void main(String[] args) {
                Animal a1 = new CatFactory().getAnimal();
                Animal a2 = new DogFactory().getAnimal();
                Animal a3 = new SnakeFactory().getAnimal();
        }

}
class Animal {}
class Cat extends Animal {}
class Dog extends Animal {}
class Snake extends Animal {}
interface AnimalFactory {
        Animal getAnimal();
}
class CatFactory implements AnimalFactory {

        @Override
        public Animal getAnimal() {
                return new Cat();
        }
       
}
class DogFactory implements AnimalFactory {

        @Override
        public Animal getAnimal() {
                return new Dog();
        }
       
}
class SnakeFactory implements AnimalFactory {

        @Override
        public Animal getAnimal() {
                return new Snake();
        }
       
}




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2