简单工厂模式只是用来入门的设计模式,并不符合java设计的7大原则,因此不是23中设计模式之一
//设计一个运动员接口,球员有两个操作转会或者参加比赛
public interface Player{
public void Operation1();
public void Operation2();
}
//有两个类实现了Palye接口
public class Player1 implements Player{
@Override
public void Operation1() {
System.out.println("这是运动员1的操作1");
}
@Override
public void Operation2() {
System.out.println("这是运动品1的操作2");
}
public class Player2 implements Player{
@Override
public void Operation1() {
System.out.println("这是运动员2的操作1");
}
@Override
public void Operation2() {
System.out.println("这是运动员2的操作2");
}
//设计一个工厂类,专门生产运动员
public class simpleFactory {
//切记,下面的这个方法是用的static修饰,便于用类名直接创建
public static Player getProduct(String p){
if (p.equals("p1")){
return new Player1();
}else if(p.equals("p2")){
return new Player2();
}else{
return null;
}
}
//测试类
public class Test {
public static void main(String args[]){
Player p1=simpleFactory.getProduct("p1");
p1.Operation1();
p1.Operation2();
}
}
打印结果:
这是运动员1的操作1
这是运动员1的操作2