zoukankan      html  css  js  c++  java
  • java自学 day5

    异常:程序运行过程中,出现一些问题,阻止了程序的正常运行,这种情况称之为异常。

    异常处理:异常处理机制能让程序在异常发生时,按照代码的预先设定的异常处理逻辑,针对性地处理异常,让程序尽最大可能恢复正常并继续执行。

    一般使用 try...catch...语句块来处理异常,下面是一个例子:

    import java.util.Scanner;
    
    public class test {
    
        public static void main(String[] args) {
            while(true){
            try{
            Scanner in=new Scanner(System.in);
            System.out.println("请输入1或2!");
            int a=in.nextInt();
            if(a!=1&&a!=2){
                continue;
            }
            else{
                break;
            }
            }catch(Exception e){
                continue;
            }
            
        }
        System.out.println("欢迎");
    }}

    这里输入了不属于int类型的"a",但是并没有出现错误,这是因为这里的异常被catch捕获到了,并执行了continue,继续循环。

     如果注释掉try...catch...语句块

    import java.util.Scanner;
    
    public class test {
    
        public static void main(String[] args) {
            while(true){
            /*try{*/
            Scanner in=new Scanner(System.in);
            System.out.println("请输入1或2!");
            int a=in.nextInt();
            if(a!=1&&a!=2){
                continue;
            }
            else{
                break;
            }
            /*}catch(Exception e){
                continue;
            }*/
            
        }
        System.out.println("欢迎");
    }}

    再输入"a"会出现这种结果:

    可以有多个catch块,每个catch可以处理一个异常,异常匹配是按照catch块的顺序从上往下寻找的,只有第一个匹配的catch会得到执行,如果catch块之间有父子关系,子类异常放在前面。

    throws是另一种处理异常的方式,就是不知道该如何处理,就把这个异常用throws抛出,让调用这个方法的去处理。

  • 相关阅读:
    beautiful number 数位DP codeforces 55D
    最长上升子序列
    0-1背包 codeforces 55 D
    概率DP HDU 4586 play the dice
    水题 不要62 HDU 2089
    抓老鼠 codeForce 148D
    ZOJ 3551 吸血鬼 概率DP
    poj 2151 Check the difficulty of problems 概率DP
    HDU 4681 string 求最长公共子序列的简单DP+暴力枚举
    HDU 1814 模板题 2-sat
  • 原文地址:https://www.cnblogs.com/gyd123/p/9409674.html
Copyright © 2011-2022 走看看