Java异常ClassCastException的解决

InvocationTargetException属于什么异常,是运行时异常还是编译时异常?

InvocationTargetException属于运行时异常。它是Java反射机制中的异常,当通过反射调用方法时,如果目标方法抛出了异常,但是调用方没有捕获该异常,那么就会抛出InvocationTargetException。

成都创新互联公司2013年开创至今,是专业互联网技术服务公司,拥有项目网站建设、网站设计网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元白银做网站,已为上家服务,为白银各地企业和个人服务,联系电话:18980820575

它是由Java虚拟机在运行时抛出的,而不是在编译时检查的。因此,它不需要在方法签名中声明,也不需要在调用方进行捕获或声明。

当我们使用反射调用方法时,如果目标方法抛出了异常,我们可以通过捕获InvocationTargetException来获取原始异常信息,并进行相应的处理。

编译错误,一般是语法上存在问题,编译过不去;

运行错误,是指程序在运行过程中出现错误,只能说是程序存在一定的边界bug;

编译错误一般是指java语法的错误,运行错误分两种一种是error还有就是Exception 有的异常是抛出但可继续执行之后的代码,

有的异常是无法继续进行的代码如:

RuntimeException,ClassCastException, 那么,编译和运行时期最好的理解就是java1.5之后出现的泛型机制,

在以前的版本中如果考虑不当,只会在运行时出现异常,现在加了泛型,问题会给暴露在编译时期,这样就提高了代码的安全性。

编译错误和运行时异常怎么区分?

  编译错误,一般是语法上存在问题,编译过不去;  运行错误,是指程序在运行过程中出现错误,只能说是程序存在一定的边界bug;  编译错误一般是指java语法的错误,运行错误分两种一种是error还有就是Exception 有的异常是抛出但可继续执行之后的代码,有的异常是无法继续进行的代码如:  RuntimeException,ClassCastException, 那么,编译和运行时期最好的理解就是java1.5之后出现的泛型机制,在以前的版本中如果考虑不当,只会在运行时出现异常,现在加了泛型,问题会给暴露在编译时期,这样就提高了代码的安全性。

Error与Exception有什么区别?

Error和Exception的联系

继承结构:Error和Exception都是继承于Throwable,RuntimeException继承自Exception。

Error和RuntimeException及其子类称为未检查异常(Unchecked exception),其它异常成为受检查异常(Checked Exception)。

Error和Exception的区别

Error类一般是指与虚拟机相关的问题,如系统崩溃,虚拟机错误,内存空间不足,方法调用栈溢出等。如java.lang.StackOverFlowError和Java.lang.OutOfMemoryError。对于这类错误,Java编译器不去检查他们。对于这类错误的导致的应用程序中断,仅靠程序本身无法恢复和预防,遇到这样的错误,建议让程序终止。

Exception类表示程序可以处理的异常,可以捕获且可能恢复。遇到这类异常,应该尽可能处理异常,使程序恢复运行,而不应该随意终止异常。

运行时异常和受检查的异常

Exception又分为运行时异常(Runtime Exception)和受检查的异常(Checked Exception )。

RuntimeException:其特点是Java编译器不去检查它,也就是说,当程序中可能出现这类异常时,即使没有用try……catch捕获,也没有用throws抛出,还是会编译通过,如除数为零的ArithmeticException、错误的类型转换、数组越界访问和试图访问空指针等。处理RuntimeException的原则是:如果出现RuntimeException,那么一定是程序员的错误。

受检查的异常(IOException等):这类异常如果没有try……catch也没有throws抛出,编译是通不过的。这类异常一般是外部错误,例如文件找不到、试图从文件尾后读取数据等,这并不是程序本身的错误,而是在应用环境中出现的外部错误。

到此,以上就是小编对于java异常类的问题就介绍到这了,希望这3点解答对大家有用。

标题名称:Java异常ClassCastException的解决
地址分享:http://www.shufengxianlan.com/qtweb/news0/212750.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联