首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

异常与错误,以及异常处理和自定义异常

语言根据错误性质将运行错误分为两类:异常和错误。

语言认为那些可预料和不可预料的出错称为

中标准异常的顶级父类是

类中有两个子类和

错误:

错误程序没法处理,例如内存泄漏;所有错误都是类的直接或间接子类。

包括一些严重的程序不能处理的系统错误类,如内存溢出、虚拟机错误、栈溢出等。

这类错误一般与硬件有关,与程序本身无关,通常由系统进行处理,程序本身无法捕获和处理。

异常:

在程序运行时不正常的事件;如果程序员处理异常,程序可以继续执行;

所有异常都是类的直接或间接子类。

为了保证程序的健壮性,Java要求必须对这些可能出现的异常进行捕获,并对其进行处理。

分类:

运行期异常 = 非检查异常:

的子类;

这些异常在编译期不检测,程序中可以选择处理,也可以不处理

如果不处理运行时会中断,但是编译没问题

非运行期异常 = 检查异常:

其他的子类

是必须进行处理的异常,如果不处理,将发生编译期错误

常见的运行期异常:

空指针异常:

注意如果调用不会发生空指针异常;因为“”不等于null

数组下标越界异常:

类转换异常:

数字格式异常:

算数异常:

处理异常

不能单独使用,可以跟上或者是;可以是和;或者和。

可以同时使用,但是父子关系的,子类型方法前边。

可以使用多个,最多只有一个。

自定义异常:

一般自定义异常类中不写其他方法,只重载必要的构造方法

可以用抛出自定义异常对象,使用声明自定义异常类型

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20200315A0OM6P00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券