反射的核心是JVM在运行时才动态加载类或调用方法/访问属性,它不需要事先(编译期)知道运行对象是谁。
重点:是运行时而不是编译时
一个简单的例子
public class Singer {
public String sing() {
return "Sing a song";
}
}
通过java反射调用常见方法
方法一:
Class clazz = Class.forName("com.example.demo.web.Singer");
Singer singer = (Singer) clazz.newInstance();
singer.sing();
方法二:
Class clazz = Singer.class;
Singer singer = (Singer) clazz.newInstance();
singer.sing();
【Java反射】参考文章
深入解析Java反射(1) - 基础
推荐阅读
- Java反射原理和实际用法
- Java反射注解妙用(获取所有接口说明)
- java反射(Constructor类、Field、Method类)
- 深入解析java反射
- 利用Java反射处理private变量#yyds干货盘点#
- Java反射在Android中的使用