获取Object对象中属性的值
怎么获取到Object对象中属性的值呢?我们用一个demo来测试一下
public static void main(String[] args) throws Exception {
//实体类
VideoEntity ve = VideoEntity.builder()
.sdkfileid("sdsd")
.build();
//实体类强转成Object对象
Object o = (Object) ve;
//放到一个大的实体类作为一个属性
SessionRecord build = SessionRecord.builder()
.msgContent(o)
.build();
System.out.println(build);
//反射获取到一个类对象
Class<?> aClass = build.getMsgContent()
.getClass();
//获取指定的字段
Field sdkfileid = aClass.getDeclaredField("sdkfileid");
//这里需要设置可访问,因为在 ve 这个实体类里面我用的private修饰的,不加这一行会直接报错,如果是public可以跳过这一行
sdkfileid.setAccessible(true);
//获取属性值,强转成String类型,到这里就能获取到对象属性的值啦!!!
String o1 = (String) sdkfileid.get(o);
System.out.println(o1);
}