您的位置:首页 > 其它

工厂设计模式的改进 通过反射中Class类下的newInstance()对象

2016-09-09 22:35 337 查看
package cn.com.mooc.study1;

/*

 * 工厂设计模式的改进 通过反射中Class类下的newInstance()对象

 */

public class FactoryReflect {

public static void main(String[] args) {
String str="cn.com.mooc.study1.Apple";
Fruit fruit=Factory.getInstance(str);
fruit.eat();
str="cn.com.mooc.study1.Pear";
fruit=Factory.getInstance(str);
fruit.eat();
}

}

interface Fruit{
public void eat();

}

class Apple implements Fruit{

@Override
public void eat() {
System.out.println("吃苹果呀!");
}

}

class Pear implements Fruit{

@Override
public void eat() {
System.out.println("吃个梨吧!");
}

}

class Factory{
public static Fruit getInstance(String className)
{
Fruit fruit=null;
try
{
fruit=(Fruit)Class.forName(className).newInstance();

}catch(Exception e)
{
e.printStackTrace();
}
return fruit;
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: