异常-try...catch的方式处理异常2

  1 package cn.itcast_02;
  2
  3 /*
  4  * A:一个异常
  5  * B:二个异常的处理
  6  *         a:每一个写一个try...catch
  7  *         b:写一个try,多个catch
  8  *             try{
  9  *                 ...
 10  *             }catch(异常类名 变量名) {
 11  *                 ...
 12  *             }
 13  *             catch(异常类名 变量名) {
 14  *                 ...
 15  *             }
 16  *             ...
 17  *
 18  *             注意事项:
 19  *                 1:能明确的尽量明确,不要用大的来处理。
 20  *                 2:平级关系的异常谁前谁后无所谓,如果出现了子父关系,父必须在后面。
 21  *
 22  * 注意:
 23  *         一旦try里面出了问题,就会在这里把问题给抛出去,然后和catch里面的问题进行匹配,
 24  *         一旦有匹配的,就执行catch里面的处理,然后结束了try...catch,继续执行后面的语句。
 25  */
 26 public class ExceptionDemo2 {
 27     public static void main(String[] args) {
 28
 29         // method1();
 30
 31         // method2();
 32
 33         // method3();
 34
 35         method4();
 36     }
 37
 38     public static void method4() {
 39         int a = 10;
 40         int b = 0;
 41         int[] arr = { 1, 2, 3 };
 42
 43         // 爷爷在最后
 44         try {
 45             System.out.println(a / b);
 46             System.out.println(arr[3]);
 47             System.out.println("这里出现了一个异常,你不太清楚是谁,该怎么办呢?");
 48         } catch (ArithmeticException e) {
 49             System.out.println("除数不能为0");
 50         } catch (ArrayIndexOutOfBoundsException e) {
 51             System.out.println("你访问了不该的访问的索引");
 52         } catch (Exception e) {//它可以匹配所有的异常
 53             System.out.println("出问题了");
 54         }
 55
 56         System.out.println("over");
 57
 58         /*
 59          try {
 60             System.out.println(a / b);
 61             System.out.println(arr[3]);
 62             System.out.println("这里出现了一个异常,你不太清楚是谁,该怎么办呢?");
 63         } catch (Exception e) {//爷爷在前面是不可以的
 64             System.out.println("出问题了");
 65         } catch (ArithmeticException e) {
 66             System.out.println("除数不能为0");
 67         } catch (ArrayIndexOutOfBoundsException e) {
 68             System.out.println("你访问了不该的访问的索引");
 69         }
 70
 71         System.out.println("over");*/
 72     }
 73
 74     // 两个异常的处理,写一个try,多个catch
 75     public static void method3() {
 76         int a = 10;
 77         int b = 0;
 78         int[] arr = { 1, 2, 3 };
 79
 80         try {
 81             System.out.println(arr[3]);
 82             System.out.println(a / b);
 83             // System.out.println(arr[3]);
 84         } catch (ArithmeticException e) {
 85             System.out.println("除数不能为0");
 86         } catch (ArrayIndexOutOfBoundsException e) {
 87             System.out.println("你访问了不该的访问的索引");
 88         }
 89
 90         System.out.println("over");
 91     }
 92
 93     // 两个异常的处理,每一个写一个try...catch
 94     public static void method2() {
 95         int a = 10;
 96         int b = 0;
 97         try {
 98             System.out.println(a / b);
 99         } catch (ArithmeticException e) {
100             System.out.println("除数不能为0");
101         }
102
103         int[] arr = { 1, 2, 3 };
104         try {
105             System.out.println(arr[3]);
106         } catch (ArrayIndexOutOfBoundsException e) {
107             System.out.println("你访问了不该的访问的索引");
108         }
109
110         System.out.println("over");
111     }
112
113     // 一个异常的处理
114     public static void method1() {
115         // 第一阶段
116         int a = 10;
117         // int b = 2;
118         int b = 0;
119
120         try {
121             System.out.println(a / b);
122         } catch (ArithmeticException ae) {
123             System.out.println("除数不能为0");
124         }
125
126         // 第二阶段
127         System.out.println("over");
128     }
129 }

时间: 2024-11-05 14:39:26

异常-try...catch的方式处理异常2的相关文章

异常-try...catch的方式处理异常1

1 package cn.itcast_02; 2 3 /* 4 * 我们自己如何处理异常呢? 5 * A:try...catch...finally 6 * B:throws 抛出 7 * 8 * try...catch...finally的处理格式: 9 * try { 10 * 可能出现问题的代码; 11 * }catch(异常名 变量) { 12 * 针对问题的处理; 13 * }finally { 14 * 释放资源; 15 * } 16 * 17 * 变形格式: 18 * try {

Java基础知识强化之IO流笔记02:try...catch的方式处理异常

1. 案例示例: 1 package com.himi.trycatch; 2 3 public class ExceptionDemo { 4 5 public static void main(String[] args) { 6 int a = 2; 7 int b = 0; 8 try { 9 System.out.println(a / b); 10 } catch (ArithmeticException ae) { 11 System.out.println("除数不能为0&quo

C++处理异常 try,catch,throw,finally

异常处理的基本思想是简化程序的错误代码,为程序键壮性提供一个标准检测机制. 也许我们已经使用过异常,但是你会是一种习惯吗,不要老是想着当我打开一个文件的时候才用异常判断一下,我知道对你来说你喜欢用return value或者是print error message来做,你想过这样做会导致Memory Leak,系统退出,代码重复/难读,垃圾一堆…..吗?现在的软件已经是n*365*24小时的运行了,软件的健壮已经是一个很要考虑的时候了.自序:对写程序来说异常真的是很重要,一个稳健的代码不是靠返回

C++异常机制的实现方式和开销分析 (大图,编译器会为每个函数增加EHDL结构,组成一个单向链表,非常著名的“内存访问违例”出错对话框就是该机制的一种体现)

白杨 http://baiy.cn 在我几年前开始写<C++编码规范与指导>一文时,就已经规划着要加入这样一篇讨论 C++ 异常机制的文章了.没想到时隔几年以后才有机会把这个尾巴补完 :-). 还是那句开场白:“在恰当的场合使用恰当的特性” 对每个称职的 C++ 程序员来说都是一个基本标准.想要做到这点,就必须要了解语言中每个特性的实现方式及其时空开销.异常处理由于涉及大量底层内容,向来是 C++ 各种高级机制中较难理解和透彻掌握的部分.本文将在尽量少引入底层细节的前提下,讨论 C++ 中这一

异常使用原理--异常的正确打开方式

今天在编写项目时突然明白异常的作用,于是就写下了这一篇. 异常是一个面向对象,或者说代码结构上的概念.下面用java示例,但异常的理念在各种语言中都是通用的. 异常语法总结 具体的语法就不再细说了,异常主要有以下的几部分语法: 1 try-catch-finally的语法结构 2理解异常的抛出过程(栈展开) 3 throw new excepttion(""),自主抛出异常.利用这一点可以有,异常重新抛出 try{ ... }catch(Exception e){ throw new

(01)Spring MVC之处理异常的两种方式及优先级

项目开发中异常需要统一处理,总的来说有两种方式,一种是实现HandlerExceptionResolver接口,一种是使用@ExceptionHandler注解的方式.其中Spring已经为我们提供了一个实现了HandlerExceptionResolver接口的类SimpleMappingExceptionResolver,有人把它单独列为一种方式,不过我认为方式越少越好,哈哈哈哈哈,下面记录一下Spring MVC处理异常的这两种方式. 1.实现HandlerExceptionResolve

C++学习之路: try&amp;catch 语句块处理异常

#include <iostream> #include <string> #include <vector> #include <stdexcept> using namespace std; //对于不同的异常可以采取不同的catch块进行捕捉 int main(int argc, const char *argv[]) { try { int i; cin >> i; if(i == 0) throw runtime_error("

spring @ExceptionHandler注解方式实现异常统一处理

首先,在我们的工程中新建BaseController父类,内容如下: package com.ztesoft.zsmartcity.framework.exception; import java.io.IOException;import java.io.PrintWriter;import java.io.StringWriter;import java.util.Date;import javax.servlet.ServletException;import javax.servlet.

Spring MVC处理异常的4种方式

http://blog.csdn.net/ufo2910628/article/details/40399539 http://my.oschina.net/CandyDesire/blog/333340 Spring MVC处理异常有3种方式: (1)使用Spring MVC提供的简单异常处理器SimpleMappingExceptionResolver: (2)实现Spring的异常处理接口HandlerExceptionResolver 自定义自己的异常处理器: (3)使用@Excepti