工厂模式就是用来管理同一接口的不同实现类
interface People{
public void say();
}
class Man implements People{
public void say() {
System.out.println("I'm Man");
}
}
class Woman implements People{
public void say() {
System.out.println("I'm Woman");
}
}
简单的工厂模式 :
通过类名得到实例
public class SimpleFactory {
public People create(String category){
if(category.equals(Man.class.getSimpleName().toString())){
return new Man();
}else{
return new Woman();
}
}
}
多个工厂模式:
取代上例的字符串写法,直接使用不同方法来创建。
public class SendFactory {
public Man createMan() {
return new Man();
}
public Woman createWoman() {
return new Woman();
}
}
静态工厂:
将上例的方法改为静态方法,不需要创建实例,直接调用即可。
public class StaticFactory {
public static Man createMan() {
return new Man();
}
public static Woman createWoman() {
return new Woman();
}
}
抽象工厂模式:
暂时觉得用不到,不想记忆了。