编译错误,一般是语法上存在问题,编译过不去;
运行错误,是指程序在运行过程中出现错误,只能说是程序存在一定的边界bug;
编译错误一般是指java语法的错误,运行错误分两种一种是error还有就是Exception 有的异常是抛出但可继续执行之后的代码,
有的异常是无法继续进行的代码如:
RuntimeException,ClassCastException, 那么,编译和运行时期最好的理解就是java1.5之后出现的泛型机制,
在以前的版本中如果考虑不当,只会在运行时出现异常,现在加了泛型,问题会给暴露在编译时期,这样就提高了代码的安全性。
InvocationTargetException属于运行时异常。它是Java反射机制中的异常,当通过反射调用方法时,如果目标方法抛出了异常,但是调用方没有捕获该异常,那么就会抛出InvocationTargetException。
它是由Java虚拟机在运行时抛出的,而不是在编译时检查的。因此,它不需要在方法签名中声明,也不需要在调用方进行捕获或声明。
当我们使用反射调用方法时,如果目标方法抛出了异常,我们可以通过捕获InvocationTargetException来获取原始异常信息,并进行相应的处理。
1、ArithmeticException - 算术运算中,被0除或模除。
2、ArrayIndexOutOfBoundsException - 数组越界访问。
3、ArrayStoreException - 数据存储异常,写数组操作时,对象或数据类型不兼容。
4、ClassCastException - 类型转换异常。
5、IllegalArgumentException - 方法的参数无效。
6、IllegalThreadStateException - 试图非法改变线程状态,比方说试图启动一已经运行的线程。
7、NullPointerException - 试图访问一空对象的变量、方法或空数组的元素
8、NumberFormatException - 数据格式异常,试图把一字符串非法转换成数值(或相反)。
9、SecurityException - 如果Applet试图执行一被WWW浏览器安全设置所禁止的操作。
10、IncompatibleClassChangeException - 如改变了某一类定义,却没有重新编译其他引用了这个类的对象。如某一成员变量的声明被从静态改变为非静态,但其他引用了这个变量的类却没有重新编译,或者相反。
编译错误,一般是语法上存在问题,编译过不去; 运行错误,是指程序在运行过程中出现错误,只能说是程序存在一定的边界bug; 编译错误一般是指java语法的错误,运行错误分两种一种是error还有就是Exception 有的异常是抛出但可继续执行之后的代码,有的异常是无法继续进行的代码如: RuntimeException,ClassCastException, 那么,编译和运行时期最好的理解就是java1.5之后出现的泛型机制,在以前的版本中如果考虑不当,只会在运行时出现异常,现在加了泛型,问题会给暴露在编译时期,这样就提高了代码的安全性。
到此,以上就是小编对于java class报错的问题就介绍到这了,希望这3点解答对大家有用。
网站名称:Java异常ClassCastException怎么解决
本文地址:http://www.mswzjz.cn/qtweb/news5/389955.html
攀枝花网站建设、攀枝花网站运维推广公司-贝锐智能,是专注品牌与效果的网络营销公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 贝锐智能