java设计模式
设计模式代表有经验的面向对象软件开发人员使用的最佳实践。 设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案。 这些解决方案是由许多软件开发人员在相当长的时间内通过试错获得的。
设计模式可以分为三类:创造模式,结构模式和行为模式
1.创造模式
这些设计模式提供了一种创建对象而隐藏创建逻辑的方法,而不是直接使用 new 操作符来创建对象。
2.结构模式
这些设计模式涉及类和对象组成。 继承概念用于组成接口并定义方法组合对象以获得新功能。
3.行为模式
这些设计模式是特别侧重于对象之间的通信。
设计模式与代码语言无关,它主要解决的是代码的设计问题。它是一种想法和方法。通过使用设计模式,可以使我们的代码更灵活,可重用和可维护。
创造模式
Java工厂设计模式
原理:这是一种比较简单的方法,第一步我们要创建一个接口,对于这个接口,我们可以实现多个类来实现它。看这些类我们可以说它们都是同一个类型(实现的接口),然后我们再创建一个类,这个类是更具你传递的参数,我给你返回具体的来。具体的实现属下图所示:
peopleFactory中有一个方法,这个方法更具对象的名字创建相应的对象,返回的类型应该是people类型的,而不是具体的类。
这里实现的就是多态
代码部分:
接口:
public interface people {
public void things();
}
实现类:
public class Student implements people{
@Override
public void things() {
System.out.println("Student");
}
}
public class teacher implements people{
@Override
public void things() {
System.out.println("teacher");
}
}
工厂:
public class PeopleFactory {
public people getpatople(String name){
if (name.equals("Student")){
return new Student();
}
if (name.equals("teacher")){
return new teacher();
}
return null;
}
}
测试方法:
public class Factorytest {
public static void main(String[] args) {
PeopleFactory peopleFactory = new PeopleFactory();
people people = peopleFactory.getpatople("Student");
people.things();
people people1 = peopleFactory.getpatople("teacher");
people1.things();
}
}
out:
Student
teacher