课后作业9异常处理

动手动脑1

题目:

结果截图:

基础知识:

1.结构:

Try{

    //可能发生运行错误的代码:

}

Catch(异常类型 异常对象引用){

   //用于处理异常的代码

}

Finally{

   //用于“善后”的代码

}

2.所捕获的异常均派生自Exception类。

3.不管是否有异常发生,finally语句块中的语句始终保证被执行。

动手动脑2

题目:

运行结果:

结果分析:

嵌套的异常显示,先显示最里层的,然后在接外层。

动手动脑3

题目:

结果截图:

结果分析:

当查出一个异常后,如果未能解决,是不能跳过直接去接下一个异常的,必须解决完一个,再解决下一个。

动手动脑4

结果截图:

结果分析:

每个层次中只要有finally语句,Finally语句就一定会执行,不论是否接到错误。

动手动脑5

题目:

结果截图:

结果分析:

不一定会执行,在这个程序中,在throw语句执行后,finally语句就没有执行。

实验:

题目:

编写一个程序,此程序在运行时要求用户输入一个 整数,代表某门课的考试成绩,程序接着给出“不及格”、“及格”、“中”、“良”、“优”的结论。

代码:

package main;

import javax.swing.JOptionPane;

public class Chengji {

    public static void main(String[] args){

double n=0.0;

for(int i=0;i<1000000;i++)

    {

   String input=JOptionPane.showInputDialog("请输入学生成绩");

   try{

   n=Double.valueOf(input);

   if(n<0)

   {

   JOptionPane.showMessageDialog(null,"输入不正确");  

   }

   else if(n<60)

   {

   JOptionPane.showMessageDialog(null, "该学生成绩不及格");  

   }

   else if(n<70)

          {

           JOptionPane.showMessageDialog(null,"该学生成绩为及格");

          }

          else if(n<80)

          {

           JOptionPane.showMessageDialog(null,"该学生成绩为中等");

          }

          else if(n<90)

           {

             JOptionPane.showMessageDialog(null,"该学生成绩为良好");

           }

          else if(n<=100)

          {

           JOptionPane.showMessageDialog(null,"该学生成绩为优秀");

          }

          else if(n>100)

          {

         JOptionPane.showMessageDialog(null, "输入不正确");

        }

   }

   catch(NumberFormatExceptione)//NumberFormatException异常

       {

         JOptionPane.showMessageDialog(null, "输入不正确");

       }

    }

    }

}

结果截图:

原文地址:https://www.cnblogs.com/baiyue/p/6102864.html