• Java面向对象之异常(异常处理方式)


    一、基础概念

      (1)异常:Java程序在运行时期发生的不正常情况。

         Java就按照面向对象的思想对不正常情况进行描述和对象的封装。

      (2)异常问题分类: (Throwable:定义对于问题共性的功能。)

         1.Error:由系统底层发生的,jvn告诉使用者。不做针对性处理,直接修改代码。

         2.Exception:发生并告诉使用者,可以进行针对性的处理。

      (3)异常的处理情况

        1.遇到问题不进行具体的处理,继续抛给调用者。就是在函数上通过throws关键字声明异常。目的是让调用者可以进行处理。

        2.针对性的处理方式:捕获!
          try
          {
          //有可能发生异常的代码。
          }
          catch(异常类 变量)
          {
          //这是真正的捕获,处理异常的代码;
          }
          finally
          {
          //一定会被执行的代码。
          }

     二、虚拟机处理异常代码

     1 class Demo
     2 {
     3     int div(int a,int b)throws Exception//声明异常Exception
     4     {
     5         return a/b;
     6     }
     7 }
     8     
     9 class ExceptionDemo1
    10 {
    11     public static void main (String[] arge)throws Exception//将异常Exception抛给虚拟机处理
    12     {
    13         Demo d = new Demo();
    14         int num = d.div(4,0);
    15         System.out.println("num="+num);
    16         System.out.println("over");
    17     }
    18 }

      

     三、捕获处理异常代码(二)

    
    
     1 class Demo
     2 {
     3     int div(int a,int b)throws Exception//声明异常Exception
     4     {    
     5         return a/b;//throw new ArithmeticException("/ by zero")抛给调用者。
     6     }
     7 }
     8     
     9 class ExceptionDemo1
    10 {
    11     public static void main (String[] arge)
    12     {
    13         Demo d = new Demo();
    14         
    15         //对异常进行处理
    16         try
    17         {
    18             int num = d.div(4,0);
    19             System.out.println("num="+num);
    20         }
    21         catch(Exception e)
    22         {
    23             //处理这个对象,可以使用该对象的方法。
    24             System.out.println("处理异常的代码:除数不能为0");
    25             System.out.println(e.getMessage());//异常信息
    26             System.out.println(e.toString());//异常名称+异常信息
    27             e.printStackTrace();//异常名字+异常信息+位置。jvm默认处理收到异常就是调用这个方法。将信息显示在屏幕上。
    28         }
    29         System.out.println("over");
    30     }
    31 }
    
    

      

  • 相关阅读:
    每周进度条(第九周)
    团队项目最后更改版
    项目需求分析与建议 NABCD模型
    课堂练习找水王
    问题账户需求分析
    2016年秋季个人阅读计划
    学习进度条
    用户体验
    程序员修炼之道——从小工到专家阅读笔记03
    程序员修炼之道——从小工到专家阅读笔记02
  • 原文地址:https://www.cnblogs.com/zhuxr/p/9019583.html
Copyright © 2020-2023  润新知