下面是一个简单的工厂模式的例子,然后把这个例子里面的switch语句通过反射来实现:
首先创建一个ITree的接口:
public interface ITree {
void plant();
}
然后让下面三个类分别实现这个接口:
public class BanyanTree implements ITree {
@Override
public void plant() {
//plant 一棵榕树
System.out.println("Plant a Banyan ITree.");
}
}
public class Cypress implements ITree {
@Override
public void plant() {
// Plant 一棵柏树
System.out.println("Plant a cypress.");
}
}
public class Poplar implements ITree {
@Override
public void plant() {
//种植一棵杨树
System.out.println("Plant a poplar.");
}
}
新建一个enum类型的TreeType ,包含有榕树、柏树、杨树三种类型:
public enum TreeType {
BanyanTree,//榕树
Cypress,//柏树
Poplar//杨树
}
创建一个TreeFactory类:
publi