------- <a href="http://www.itheima.com" target="blank">android培训</a>、<a href="http://www.itheima.com" target="blank">java培训</a>、期待与您交流! ----------
异常:就是不正常。
程序在运行时出现的不正常情况。
其实就是程序中出现的问题。
这个问题按照面向对象思想进行描述,并封装成了对象。
因为问题的产生有产生的原因、有问题的名称、有问题的描述等多个属性信息存在。
当出现多属性信息最方便的方式就是将这些信息进行封装。异常就是java按照面向对象的思想将问题进行对象封装。
这样就方便于操作问题以及处理问题。
出现的问题有很多种,比如角标越界,空指针等都是。
就对这些问题进行分类。
而且这些问题都有共性内容比如:每一个问题都有名称,同时还有问题描述的信息,问题出现的位置,所以可以不断的向上抽取。
形成了异常体系。
--------java.lang.Throwable: Throwable:可抛出的。 |--Error:错误,一般情况下,不编写针对性的代码进行处理,通常是jvm发生的,需要对程序进行修正。
|--Exception:异常,可以有针对性的处理方式 无论是错误还是异常,它们都有具体的子类体现每一个问题,它们的子类都有一个共性,就是都以父类名才作为子类的后缀名。 这个体系中的所有类和对象都具备一个独有的特点;就是可抛性。 可抛性的体现:就是这个体系中的类和对象都可以被throws和throw两个关键字所操作。 ------------------------------------------------------ class ExceptionDemo{ public static void main(String[] args) { // byte[] buf = new byte[1024*1024*700];//java.lang.OutOfMemoryError内存溢出错误 } } ------------------------------------------------------ 在开发时,如果定义功能时,发现该功能会出现一些问题,应该将问题在定义功能时标示出来,这样调用者就可以在使用这个功能的时候,预先给出处理方式。 如何标示呢?通过throws关键字完成,格式:throws 异常类名,异常类名... 这样标示后,调用者,在使用该功能时,就必须要处理,否则编译失败。
处理方式有两种:1、捕捉;2、抛出。 对于捕捉:java有针对性的语句块进行处理。