Java异常

来源:互联网 发布:c语言大小写转换函数 编辑:程序博客网 时间:2024/06/04 01:03
异常:编译或运行时发生的异常事件:不同的错误对应不同的异常类型
 * Java中程序运行时出错的地方会创建异常对象,会去寻找处理该对象的代


码,找到则将异常对象交给相应的代码处理,找不到则退出程序
 * Java中对异常分为两种:1.错误(Error);2.Exception Error:系统的严重


错误(jvm崩溃,内存错误),Java代码不处理
 * Exception:异常,可以处理 Throwable Error Exception 不需查异常


(RuntimeException和其所有子类)
 * 已检测异常(除不需查异常外其他的所有异常)
 * 不需查异常:一般都是由程序员自己导致的,如果程序员够细心则不会发生


不需查异常,所以在编码时对有可能发生不需查异常的代码是不需要处理
 * 不需查异常一旦发生则运行时会创建相应的不需查异常对象交给jre,jre则


会退出程序
 * 已检测异常:需查异常,在可能发生异常的代码处进行相应的处理,如果


不处理则编译错误 对于已检测异常的处理方案:1.捕获异常;2.抛出异常
 * 1.捕获异常:try{}catch(异常对象类型){}finally{},可以是try 


catch;也可以是try finally
 * catch可以有多个,多个catch的运行顺序是从上向下运行,则需要将可能抛


出的异常子类放上面,父类放下面
 * try catch finally return之前会先将finally执行完毕
 * java7中可以在一个catch中捕获多种异常
 * 2.抛出异常:throws在定义方法时在方法头上表明此方法内部可能会抛出


异常对象,异常可以有多种,多个异常用逗号隔开
 * throw在方法内部将真正的异常对象抛出
 * 方法重写时对于throws定义的异常处理方案:
 * 1.父类方法没有声明抛出异常则子类重写方法也不可以声明抛出异常
 * 2.子类方法声明的抛出异常不能是父类抛出异常的父类
 * 3.子类方法声明的抛出异常类型的数目不能超过父类方法
如果子类异常类型数比父类多的解决方案:
 *throw new MyException1(new MyException2("狗不吃巧克力"));
 *也可以把一个需查异常包装成一个不需查异常
 * 自定义异常类:首先确定你定义的是需查还是不需查异常,然后只需要添


加构造调用父类构造即可
 * 自定义一个需查异常类型;定义另外一个类计算除法,当除数为0时抛出自


定义异常对象
*自定义需查异常类时,该类必须继承Exception类及其子类。
*Java语言类间的继承关系是单继承,接口是多继承
*int x[]=new int[20],此词语定义了数组后数组内的元素都为0
*int []a1,a2[];a2是个二维数组,a1是一维数组。
*
原创粉丝点击