码迷,mamicode.com
首页 > 编程语言 > 详细

Java异常

时间:2018-09-13 20:08:06      阅读:161      评论:0      收藏:0      [点我收藏+]

标签:线程   崩溃   com   账户   throws   time   简单的   final   []   

异常概述:

异常是指在程序运行过程中发生的异常事件 , 如0溢出,数组下标越界,找不到文件等,这些事件发生会导致程序不能正常运行。因此,为了加强程序的健壮性,在进行程序设计时,必须考虑可能发生的异常事件并要做出相应的处理。Java通过面向对象的方法来处理异常/。如果在一个方法的运行过程中发生了异常,则这个方法生成代表该异常的一个对象,并把它交给运行时系统,运行使系统会寻找相应的代码来处理繁盛的异常。我们吧生成异常对象帮把它交给运行时系统这一过程称为抛出(throw)一个异常。
Java 异常体系 :
Error  :  错误  出现错误引发程序崩溃
Exception  : 分为 IOException 和  RuntimeException引起线程中断, 是所有异常的基类。
checked Exception 检测异常,要求必须被捕获处理,比如IOException
Runtime Exception 运行时异常,也叫做unchecked Exception
技术分享图片
异常的处理方式;
一 : 积极的异常处理方式。 
1 try {
2            // 可能出现异常的代码块
3 }catch (Exception e)// 括号内为异常的处理对象{
4         // 捕获异常的处理方式
5 }finally{
6             // 无论有没有异常对象被捕获都会执行的代码
7 }

积极的异常处理方式的捕获顺序 ;

 1 public class ExceptionDemo2 {
 2     public static void main(String[] args) {
 3         String s = "abc";
 4     try{
 5         s.charAt(5);
 6     }catch(StringIndexOutOfBoundsException e){
 7         System.out.println("StringIndexOutOfBoundsException");
 8     }catch(IndexOutOfBoundsException e){
 9         System.out.println("IndexOutOfBoundsException");
10     }catch (Exception e) {
11         System.out.println("Exception");
12     }
13     }
14 }

 技术分享图片

 二;  消极的异常处理方式:

public void test() throws Exception{
        // 消极的异常处理方式, 表示当前方法一旦发生异常,则自己不做处理,而将异常交给上级方法进行处理.
}

 Java 的异常处理机制:

技术分享图片

Java异常体系的关键字 :

  • throw  主动抛出异常

  • throws

1. 写在方法上,表示当前方法会抛出一个异常
2. 如果抛出的异常是checked Exception那么要求上级调用方法必须做出处理
3. 如果抛出的异常是一个运行时异常,那么不做处理

  •  finally
    在积极的异常处理中最后一个代码块,表示当前逻辑一定会被执行 。
 自定义异常:
java虽然为我们提供了很多种异常类,但并不能满足程序设计中不可预见的异常。有时候,我们希望在程序中自定义异常,来表示可能遇到的问题。Java提供的自定义异常可以满足程序员按需创建异常的要求。我们可以通过简单的继承已知异常类来创建我们的自定义异常类。创建异常类时,最简单的办法是使用编译器产生的缺省构造方法。要抛出自定义异常, 我们必要要有自定义的异常类。并且继承了RuntimeException。
自定义异常类的使用:
1 public class ExceptionDemo {
2     public static void main(String[] args){
3     test("zhangsan");
4 } 
5     public static void test(String s){
6     throw new LoginException("您的账户密码错误: "+s);
7 }
8 }

 技术分享图片

 

Java异常

标签:线程   崩溃   com   账户   throws   time   简单的   final   []   

原文地址:https://www.cnblogs.com/thelovelybugfly/p/9642165.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!