面试:你懂什么是分布式系统吗?Redis分布式锁都不会?>>>
使用反射,有效的避免了每添加一个类,都需要修改factory方法
package com.gavin.reflect;
interface fruit{
public abstract void eat();
}
class Apple implements fruit{
public void eat(){
System.out.println("Apple");
}
}
class Orange implements fruit{
public void eat(){
System.out.println("Orange");
}
}
class Factory{
public static fruit getInstance(String ClassName){
fruit f=null;
try{
f=(fruit)Class.forName(ClassName).newInstance();
}catch (Exception e) {
e.printStackTrace();
}
return f;
}
}
/***
* 使用反射,
* @author gavin
*
* 2013-5-6
*/
class HelloF{
public static void main(String[] a){
fruit f=Factory.getInstance("com.gavin.reflect.Apple");
if(f!=null){
f.eat();
}
}
}