如何用java反射获取对象

这篇文章主要介绍“如何用java反射获取对象”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“如何用java反射获取对象”文章能帮助大家解决问题。

1、使用对象调用Object的getClass方法

获取字节码对象的方法:要使用这种方法,必须明确具体类别,并创建对象。

public static void getClassObject_1() {
 
Person p = new Person();
Class<?> clazz = p.getClass();
 
Person p1 = new Person();
Class<?> clazz1 = p1.getClass();
 
System.out.println(clazz == clazz1);
}

2调用属性

任何数据类型都有静态属性。class可以获得相应的class对象。比较简单,但是要明确使用类别中的静态成员。

public static void getClassObject_2() {
 
Class<?> clazz = Person.class;
 
Class<?> clazz1 = Person.class;
System.out.println(clazz == clazz1);//true都是Person类的字节码
}

3、采用forName()方法

可以通过给定类别的字符串名来获得,并且可以更加扩展。但是在Class类中完成。这种方法是forName.这种方法只要有名字就可以,更加方便,更加可扩展。

public static void getClassObject_3() throws ClassNotFoundException {
 
String className = "com.ldb.po.Person";
 
Class<?> clazz = Class.forName(className);
 
System.out.println(clazz);
}

关于“如何用java反射获取对象”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注编程之家行业资讯频道,小编每天都会为大家更新不同的知识点。

相关文章

Java中的String是不可变对象 在面向对象及函数编程语言中,不...
String, StringBuffer 和 StringBuilder 可变性 String不可变...
序列化:把对象转换为字节序列的过程称为对象的序列化. 反序...
先说结论,是对象!可以继续往下看 数组是不是对象 什么是对...
为什么浮点数 float 或 double 运算的时候会有精度丢失的风险...
面试题引入 这里引申出一个经典问题,看下面代码 Integer a ...