1.设计模式:(Design pattern)代表了最佳的实践,通常让一些有经验的面向对象的软件开发人员所使用,设计模式是软件开发人员在软件开发过程中面临的一般的问题的解决方案,这些解决方案是众多软件开发人员,经过相当长的一段时间的实验和错误总结出来的,以后我们就可以直接使用前辈给我们开发好的设计模式,《大话设计模式》有兴趣可以看看
2.设计模式:是一套被反复使用,多数人知晓的,经过了分类,代码设计总结的。
3.使用设计模式的目的:就是为了代码的可重用性,让代码更加的容易被人们理解,保证代码的可靠性,设计模式使得代码编写真正的工程化,设计模式是软件工程的基石脉络。如同大厦的结构一样
4.简单工厂模式:工厂模式是我们最常用的实例化对象模式。是用工厂方法代替了new操作的一种模式,著名的java论坛,就是大量的使用了工厂模式,工厂模式在java程序系统中可以说是随处都可以见到,因为工厂模式就相当于创建实例对象new,我们经常要根据类class生成实例对象,如 A a = new A();工厂模式也是用来创建实例对象的,所以以后在new对象的时候要注意一下。是否可以使用工厂模式来创建对象,虽然这样做,我们要多出一些步骤,但是会给你系统带来更大的可扩展性和尽少的修改量
package cn.kgc.dmo1;
/**
* 1.产品的规范
* @author 92126
*
*/
public interface Animal {
//产品能吃
public void eat();
//产品能跑
public void run();
}
package cn.kgc.dmo1;
public class AnimalFactory {
//定义俩个静态常量
private static final String CAT = "CAT";
private static final String DOG = "DOG";
/**
* 开始生产产品
*/
public Animal getAnimal(String ss) {
if(CAT.equals(ss)) {
return new Cat();
}else if(DOG.equals(ss)) {
return new Dog();
}else {
return null;
}
}
}
package cn.kgc.dmo1;
/**
* 产品猫
* @author 92126
*
*/
public class Cat implements Animal{
@Override
public void eat() {
System.out.println("猫吃老鼠");
}
@Override
public void run() {
System.out.println("猫不喜欢跑步");
}
}
package cn.kgc.dmo1;
/**产品狗
* @author 92126
*
*/
public class Dog implements Animal{
@Override
public void eat() {
System.out.println("狗吃骨头");
}
@Override
public void run() {
System.out.println("狗抓坏人");
}
}
package cn.kgc.factory;
/**
* 工厂模式
* 4.客户端调用
* @author 92126
*
*/
public class Test {
public static void main(String[] args) {
//1.创建工厂
AnimalFactory animalFactory = new AnimalFactory();
//2.传入描述生产产品
Animal animal = animalFactory.getAnimal("CAT");
animal.eat();
animal.run();
}
}