黑马程序猿 JAVA基础学习笔记 异常等

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------

------小弟在因特网的小窝,祝愿所有的朋友身体健康-------


异常是JAVA对不正常对不正常情况作为对象的描述;

他把JAVA中出现的问题都封装为对象;

问题分严重的和不太严重的;

严重的通过error类描述;

不太严重的通过exception描述;

他们都是thorwable的子类;

异常的处理:

try

catch

finally

一个方法可能出现异常时,定义时后面加throws 异常类;

调用这个方法的家伙就必须处理这个异常;这是强制的;

处理的方式 要么捕捉  要么抛出去;

声明异常时要尽量具体;

可以一次抛出多个异常;

catch只处理与其匹配的异常;

catch的执行顺序是顺序的顺序的;

所以对应父类的catch要放在最下面;

catch不要做多余的,不需要处理的不去处理;

异常处理时,一般不会输出到控制台,最好输出到日志文件,方便在应用环境中收集异常情况信息;


自定义异常:

JAVA中不认为是异常,但我们认为它是异常的东东,比如毕老师不允许除数是负数;

if(异常情形)throw new 自定义异常类;

函数内的抛出,必须处理;处理的可以suround try catch 也可以声明throws;

输出想要的信息,可以覆盖getmessage方法;

自定义异常继承exception 实现throwable;

throws和throw区别;一个用在声明上  一个具体抛动作;

throw的是对象 throws的是类;

throw new 算数异常,构造参数丢入自定义的字符串,输出就好看了;

runtime异常比较特殊,因为他没办法实质处理,只能停止执行;

函数内抛出runtime或者他的子类不用在函数上声明了;如果声明了,调用者也无需处理;因为此类异常,通常都需要程序停止执行;

无法继续执行的异常,就让他继承runtime异常去吧;

异常分编译时异常 运行时异常;

finally中存放一定会执行的代码,例如关闭数据库  关闭文件等等;

没有异常也可以看做是一种异常;

3个常见格式:

try

catch


try

catch

finally


try

finally

子类抛异常时,可以抛父类抛过得或其子类的;

父类抛多个,子类只能抛个子集;

父类如果没有抛出东西,子类在覆盖时只能try catch不能抛;

catch中什么都不写是不好的;

throw了但是没声明  下面不能放语句 因为可能执行不到  throw了就over了;

return和finlly后面都不适合放东西,执行不到的;


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值