黑马程序员--异常
2015-03-25 16:58
274 查看
------<a href="http://www.itheima.com" target="blank">Java培训、Android培训、iOS培训、.Net培训</a>、期待与您交流! -------
异常:
Java中一共提供了try、catch、finally、throw和throws 5个关键字来处理异常。
其中的try-catch-finally需要配套使用,它们的作用是捕获和处理异常,
使用try关键字和它后面的{}把有可能出现异常的代码包含起来。
如果try语句中发生异常,这个异常就会被抛出。
这时就可以用catch语句来捕获异常,并在这个语句中,对这个异常进行处理。
还有一些是不管是否发生异常,都需要执行的代码,就把它们放到finally语句中。
在Java的lang包里有一个Throwable类,它是所有异常的父类或者间接父类。
每个个异常类型都是Throwable类的子类,这其中有两个直接子类:Error和Exception.
Error类及其子类是用来处理系统内部及程序运行环境的异常,一般与硬件有关,由系统直接处理,不需要程序员在程序处理。
Exception类是程序能够捕获到的异常情况。它又可以分为两大类:运行时异常(为RuntimeException)和检查型异常(也称非运行时异常。)
运行时异常(RuntimeException)是设计或者是实现问题上出现的错误,大多数是由于程序设计不当而引发的,但这种错误
要在运行期间才会发生和被发现。
异常:就是程序在运行时出现不正常情况。
异常由来:问题也是现实生活中一个具体的事物,也可以通过java的类的形式进行描述。并封装成对象。
其实就是java对不正常情况进行描述后的对象体现。
对于问题的划分:两种:一种是严重的问题,一种非严重的问题。
对于严重的,java通过Error类进行描述。
对于Error一般不编写针对性的代码对其进行处理。
对与非严重的,java通过Exception类进行描述。
对于Exception可以使用针对性的处理方式进行处理。
无论Error或者Exception都具有一些共性内容。
比如:不正常情况的信息,引发原因等。
异常的处理
java 提供了特有的语句进行处理。
try
{
需要被检测的代码;
}
catch(异常类 变量)
{
处理异常的代码;(处理方式)
}
finally
{
一定会执行的语句;
}
对捕获到的异常对象进行常见方法操作。
String getMessage():获取异常信息。
在函数上声明异常。
便于提高安全性,让调用出进行处理。不处理编译失败。
自定义异常
因为项目中会出现特有的问题,而这些问题并未被Java所描述并封装对象
所以对于这些特有的问题可以按照Java的对问题封装的思想,将特有的问题进行了自定义的异常封装。
当在函数内部出现了throw抛出异常对象,那么就必须要给对应的处理动作。要么在内部try{}catch(){}处理
要么在函数上声明让调用者处理。
一般情况下,函数内出现异常,函数上需要声明。
如何自定义异常信息呢?
因为父类中已经把异常信息的操作都完成
所以子类只要在构造时,将异常信息递给父类,通过super语句,那么就可以直接通过getMessage方法获取
自定义的异常信息。
异常:
Java中一共提供了try、catch、finally、throw和throws 5个关键字来处理异常。
其中的try-catch-finally需要配套使用,它们的作用是捕获和处理异常,
使用try关键字和它后面的{}把有可能出现异常的代码包含起来。
如果try语句中发生异常,这个异常就会被抛出。
这时就可以用catch语句来捕获异常,并在这个语句中,对这个异常进行处理。
还有一些是不管是否发生异常,都需要执行的代码,就把它们放到finally语句中。
在Java的lang包里有一个Throwable类,它是所有异常的父类或者间接父类。
每个个异常类型都是Throwable类的子类,这其中有两个直接子类:Error和Exception.
Error类及其子类是用来处理系统内部及程序运行环境的异常,一般与硬件有关,由系统直接处理,不需要程序员在程序处理。
Exception类是程序能够捕获到的异常情况。它又可以分为两大类:运行时异常(为RuntimeException)和检查型异常(也称非运行时异常。)
运行时异常(RuntimeException)是设计或者是实现问题上出现的错误,大多数是由于程序设计不当而引发的,但这种错误
要在运行期间才会发生和被发现。
异常:就是程序在运行时出现不正常情况。
异常由来:问题也是现实生活中一个具体的事物,也可以通过java的类的形式进行描述。并封装成对象。
其实就是java对不正常情况进行描述后的对象体现。
对于问题的划分:两种:一种是严重的问题,一种非严重的问题。
对于严重的,java通过Error类进行描述。
对于Error一般不编写针对性的代码对其进行处理。
对与非严重的,java通过Exception类进行描述。
对于Exception可以使用针对性的处理方式进行处理。
无论Error或者Exception都具有一些共性内容。
比如:不正常情况的信息,引发原因等。
异常的处理
java 提供了特有的语句进行处理。
try
{
需要被检测的代码;
}
catch(异常类 变量)
{
处理异常的代码;(处理方式)
}
finally
{
一定会执行的语句;
}
对捕获到的异常对象进行常见方法操作。
String getMessage():获取异常信息。
在函数上声明异常。
便于提高安全性,让调用出进行处理。不处理编译失败。
自定义异常
因为项目中会出现特有的问题,而这些问题并未被Java所描述并封装对象
所以对于这些特有的问题可以按照Java的对问题封装的思想,将特有的问题进行了自定义的异常封装。
当在函数内部出现了throw抛出异常对象,那么就必须要给对应的处理动作。要么在内部try{}catch(){}处理
要么在函数上声明让调用者处理。
一般情况下,函数内出现异常,函数上需要声明。
如何自定义异常信息呢?
因为父类中已经把异常信息的操作都完成
所以子类只要在构造时,将异常信息递给父类,通过super语句,那么就可以直接通过getMessage方法获取
自定义的异常信息。
相关文章推荐
- 黑马程序员-读取键盘_转换流_异常日志信息_打印java虚拟机信息
- 黑马程序员-(11)Java基础之面向对象(六)异常
- 黑马程序员------异常
- 黑马程序员_Java中的异常处理
- 黑马程序员-----------JAVA基础-------异常机制
- 黑马程序员--Java基础--继承、抽象类、接口、内部类、异常、包
- 黑马程序员_内部类,异常,自定义异常,RunTimeException, throw和throws
- 黑马程序员 第22天 异常
- 黑马程序员——Java练习笔记——异常
- 黑马程序员--面向对象第二部分-内部类、异常--java学习日记6(基础知识)
- 黑马程序员_Java基础Day09(下)_异常(未完)
- 黑马程序员_异常
- 黑马程序员——异常机制4:RuntimeException
- 黑马程序员————异常
- 黑马程序员------Throwable及常见异常
- 黑马程序员—异常
- 黑马程序员_异常
- 黑马程序员 Java面向对象(异常)
- 黑马程序员_Java基础_面向对象(异常2、练习题、导包)
- 黑马程序员_java入门_异常