Java 反射实例 (二)

第一步: 新建接口,内含eat() 方法

People.java

package com.xuzhiwen.spring2;

public interface People {
    public abstract void eat();
}

第二步:编写两个实现类

Man.java  

package com.xuzhiwen.spring2;

public class Man implements People{

    @Override
    public void eat() {
        System.out.println("man est()...");
    }
}

Woman.java

package com.xuzhiwen.spring2;

public class Woman implements People{

    @Override
    public void eat() {
        System.out.println("Woman est()...");
    }
}

第三步:编写工厂类

PeopleFactory.java

package com.xuzhiwen.spring2;

public class PeopleFactory {
    public static People getInstance(String className){
        People p = null;
        try {
            p = (People) Class.forName(className).newInstance();
        } catch (Exception e) {
            e.printStackTrace();
        }
        return p;
    }
}

第四步:编写测试类

package com.xuzhiwen.spring2;

public class TestPeople {
    public static void main(String[] args) {
        People p = PeopleFactory.getInstance("com.xuzhiwen.spring2.Woman");
        p.eat();
    }
}

第五步:运行结果如下

 

posted @ 2017-08-17 16:24  beibidewomen  阅读(139)  评论(0编辑  收藏  举报