java中的exception模块
package com.te.exp;
/**
* 此类用于学习异常
* 异常处理方法
* 1.虚拟机默认处理
* 将异常的名称(类型)异常出现的原因 以及异常出现的位置输出到控制台
* 2.程序员手动处理
* 有两种方案
* 1.try....catch...(捕获异常)
* try...catch格式
* try{
* 可能出现异常代码的代码块1;
* 可能出现异常代码的代码块2;
* 可能出现异常代码的代码块3;
* .........
* }catch(异常类型 变量名){
* 处理异常的代码:
* // 当try中代码出现的异常类型。能在catch中声明异常类型匹配,才会执行catch
* 反之,不会执行
* }
* 2.throws(抛出异常)
*/
import java.util.Scanner;
public class Study_Exception {
public static void main(String[] args) {
// method(); // 使用method方法让异常暴露
// method1();
try {
metod2(); // 使用throws抛出异常
}catch (Exception e){
e.printStackTrace();
System.out.println("请输入正确的整数后计算。。。。。。。。。。。。");
}
}
private static void metod2() throws Exception{
int a = new Scanner(System.in).nextInt();
int b = new Scanner(System.in).nextInt();
System.out.println(a / b);
}
private static void method1() {
try {
int a = new Scanner(System.in).nextInt();
int b = new Scanner(System.in).nextInt();
System.out.println(a / b);
}catch (Exception e){ // 多态:不关心子类的类型,只要是Exception类型的异常,都可以接收
System.out.println("请输入正确的整数后计算。。。。");
}
// }catch (ArithmeticException a){
// System.out.println("除数不能为0");
//
// }
}
private static void method() {
int a = new Scanner(System.in).nextInt();
int b = new Scanner(System.in).nextInt();
System.out.println(a/b);
}
}
原文地址:http://www.cnblogs.com/ch2020/p/16852296.html
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。