手记

Java:反射-实例化对象

Java:反射-实例化对象
  • 概念:主要是指程序可以访问,检测和修改它本身状态或行为的一种能力,并能根据自身行为的状态和结果,调整或修改应用所描述行为的状态和相关的语义。
  • 反射是java中一种强大的工具,能够使我们很方便的创建灵活的代码,这些代码可以再运行时装配,无需在组件之间进行源代码链接。但是反射使用不当会有大麻烦!

利用反射来进行对象实例化(达到解耦合的作用):

源代码:

/**
 * 有了反射之后以后在进行对象实例化后,不再只是单独用关键字new来进行了
 * 反射同样可以完成
 * @author Dujiang
 *
 */
class Food {
    public Food(){
        System.out.println("=========Food类的无参构造==========");
    } 
    @Override
    public String toString(){
        return "这是一盘子shit" ;
    }   
}
public class TestDemo {
    public static void main(String[] args) throws Exception {
        Class<?> cls = Class.forName("Food") ;
        Object obj = cls.newInstance() ; //相当于用new来调用无参构造实例化
        Food food = (Food) obj ; //向下转型
        System.out.println(food);
    }
}
13人推荐
随时随地看视频
慕课网APP