目录
Java中的反射机制
一丶什么是反射机制
- 反射就是指Java在运行期间,可以获得类的一些信息.比如构造方法(私有共有...)以及属性
二丶Class类,自描述类.获取类名的三种方法
1.使用静态属性Class获取
代码:
Class cls = Person.class; //获取自描述类
String strClassName = cls.getName();获取类的包名 + 类名
输出(strClassName);
首先我们的Class类是自描述类.可以返回这个类的描述信息.
有很多方法.比如获取类名字,方法.构造等等.
2.使用Class方法 forName()获取自描述Class
public static void main(String[] args) throws Exception {
// TODO 自动生成的方法存根
Class cls = Class.forName("com.ibinary_01.Person");//传入完整类名获取Class
String clsName = cls.getName();
System.out.println(clsName);
}
可以看到,我们使用forName必须传入完整的类名.
3.使用Object自带的getClass返回自描述Class
- 因为我们的类,继承了Object,所以需要实例,进行调用getClass方法.
代码如下
public static void main(String[] args) throws Exception {
// TODO 自动生成的方法存根
Class cls = new Person().getClass();
String clsName = cls.getName();
System.out.println(clsName);
}
三个的输出结果都一样,演示一下