zoukankan      html  css  js  c++  java
  • 07-异常处理 动手动脑

    1. 异常处理先执行try语句,catch处理异常,finally一定执行。
    2. 浮点数除以0不会引发异常

    浮点数数字取值范围为无穷大和无穷小,除以0时候为无穷大,所以正常执行。

    1. CatchWho.java运行结果

     

    1. CatchWho2.java运行结果

    异常会有相应catch捕获,不执行其他部分。

     

    1. Finally执行一定吗

    存在System.exit(0);会直接终止执行,不执行finally语句。

    编写程序,输入成绩判断优良。

     package 成绩;

    import java.util.Scanner;

    public class score {

     

        public static void main(String[] args) {

            // TODO Auto-generated method stub

             Scanner input=new Scanner(System.in);

                while(true){

                try{

                    System.out.println("请输入分数:");

                    String score=input.nextLine();

                    for(int i=0;i<score.length();i++){

                    if(!(score.charAt(i)>=48&&score.charAt(i)<=57)){

                        throw new MyException();

                        }

     

                    }

                    int s = Integer.parseInt(score);

                    String str="";

                    if(s<60)

                        str="不及格";

                    else if(s<70)

                        str="及格";

                    else if(s<80)

                        str="中";

                    else if(s<90)

                        str="良";

                    else if(s<100)

                        str="优";

                    else if (s>100||s<0)

                        throw new MyException();

                   

                    System.out.println("分数等级为:"+str);   

                    break;

                }

                catch(MyException e) {

                       e.mistake();

                    }

                }

     

            }

     

        }

     

        class  MyException extends Exception{

            public void mistake(){

                    System.out.println("你输入的数字不符合要求");   

            }

           

           

        }

     

  • 相关阅读:
    c++,不能声明为虚函数的函数
    Abstract
    多态性vptrvtable
    C++的重写,重载,重定义
    final
    scanf()和getchar() 使用
    深入理解C++中的mutable关键字
    equal和==
    MoQ(基于.net3.5,c#3.0的mock框架)简单介绍
    VS2008快捷键
  • 原文地址:https://www.cnblogs.com/andibier/p/7846715.html
Copyright © 2011-2022 走看看