关于java.lang.Class 的笔记

本文探讨了Java中Class类的实例化方法及其与反射原理的关系。介绍了通过类名、实例对象及类路径三种方式创建Class对象的过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.任何一个类都是Class的实例对象,但是Class类不能创建只能被java的虚拟机创建,私有构造。
class par(){
}//这是一个java类

par p=new par();
//par类就被实例化构建了

2.class类怎样实例化呢?网上搜集有三种表示方式

Class class1=par.class//再想想这应该就是每个类的实例对象都有隐藏的class变量?(不知道变量这个词描述对不对)
Class class2=p.getClass();//这是第二种方法,从实例化的par类中得到实例化的class类(头大勉强理解)

class1和class2代表了 par这个类的类类型。就等同于 int num;num的类型是int整型?

第三种实例化方法 Class class3=Class.forName('任何一个类的路径');

class3实例化了任何一个class类的类,就可以调用属性,方法。---->又回到了反射原理。

----2018/03



引用\[1\]中提到,这个错误是由于在使用datax-common中的Configuration.java工具类时,当设置的json中的值字符串内容也包含\[\]时,调用Object object = this.get(path, List.class);返回的内容为String,而不是List对象,导致类型转换异常。为了修复这个问题,可以对代码进行如下修复:在getList方法中添加异常处理,当发生类型转换异常时,将String值添加到List中。然后重新打包datax-common模块,将datax/lib下的datax-common-0.0.1-SNAPSHOT.jar替换为新打好的jar。\[1\] 引用\[2\]中提到,还可以修改属性类型,将List<Operation>修改为内部类OperationList,以解决泛型擦除问题。\[2\] 引用\[3\]中提到,还需要在相应的配置文件中添加javaType="org.example.modules.business.entity.SysMenu$OperationList",以确保正确的类型处理。\[3\] 综上所述,要解决DataX引擎运行过程中的java.lang.ClassCastException错误,可以根据上述修复方法进行操作。 #### 引用[.reference_title] - *1* [DataX HdfsReader 源码分析,及空文件 Bug修复和路径正则功能增强](https://blog.csdn.net/github_39577257/article/details/106276811)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [数据库json格式字段映射,以及泛型擦除笔记](https://blog.csdn.net/rakunjo/article/details/123066912)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值