码迷,mamicode.com
首页 > 其他好文 > 详细

异常处理

时间:2019-04-26 22:54:02      阅读:248      评论:0      收藏:0      [点我收藏+]

标签:常用   pack   nal   语文   import   public   tostring   关闭数据库   catch   

package cn.kecheng;
import java.util.Scanner;
/**异常:异常是指在程序的运行过程中所发生的不正常的情况,它会中断正在运行的程序
   异常处理机制:java中通过异常处理机制为程序提供异常处理的能力,保持程序继续运行而不中断!
  异常处理:涉及异常处理的关键字有try…catch/try…catch…finally
 * try{有可能产生异常情况的代码段}catch(异常类型){对异常进行处理的代码段}  1.正常执行,没出现任何异常2.出现异常,异常处理,正常结束
 * 把有可能产生异常的代码放到try代码块中,catch代码块负责捕获并处理异常。
 * try{有异常情况的代码段}catch(异常类型){对异常进行处理的代码段}finally{}
 * finally块用于进行收尾工作(关闭数据库、关闭文件、释放内存等资源),不管是否发生异常,finally都执行。finally 总是执行,常用进行收尾类工作。
 * 特殊情况(B)
[1] finally不执行的情况。
System.exit(0) 正常推出(退出)jvm,finally不会执行。
[2]catch可以省略,变成try…finally块。
 */



public class Curriculum {
    public static void main(String[] args) {
        Scanner arr = new Scanner(System.in);
        System.out.println("请输入所选学科:1.语文2.数学3.英语");
        
        try { //我输入a,不符合下面的int的类型,所以出现异常,然后执行直接从下面这行调到cath(异常捕获并处理)那
            int arr1 = arr.nextInt();
            if(arr1==1){
            System.out.println("语文");}
        else if(arr1==2){
            System.out.println("数学");
        }else if(arr1==3){
            System.out.println("英语");
        }else{
            System.out.println("输入有误");
        }
            }//如果不用Exception这个父类,为了进行匹配,可以用多重catch进行多重匹配catch{异常类型1}catch{异常类型2}catch{异常类型3}。。。
         catch (Exception e){//捕获异常,进行异常匹配,【如果异常类型不匹配,程序会中断执行】Exception是所有异常的直接或间接父类
            System.out.println("输入有误");//异常处理
              // 打印异常的信息
              System.out.println(e.toString());
             //打印异常堆栈信息,
             e.printStackTrace();
            //返回异常的描述信息,如果没有信息,返回null(InputMismatchException 没有描述信息)
            System.out.println(e.getMessage());//getMessage:返回异常的描述信息
// jvm 正常结束运行 【System.exit(0)】;如果有这个
finally不会执行。因为代表整个虚拟机都关闭了,其他情况,不管是否有异常,finally都会正常执行
          } finally {
            System.out.println("程序结束");    }  
        //finally块用于进行收尾工作(关闭数据库、关闭文件、释放内存等资源),不管是否发生异常,finally都执行。finally 总是执行,常用进行收尾类工作。
    
        System.out.println("程序结束");
    
    }
}

技术图片

异常处理

标签:常用   pack   nal   语文   import   public   tostring   关闭数据库   catch   

原文地址:https://www.cnblogs.com/406070989senlin/p/10776926.html

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