1、请阅读并运行AboutException.java示例,然后通过后面的几页PPT了解Java中实现异常处理的基础知识。

答:1.抛出异常

当程序发生异常时,产生一个异常事件,生成一个异常对象,并把它提交给运行系统,再由运行系统寻找相应的代码来处理异常。这个过程称为抛出(throw)一个异常。一个异常对象可以由Java虚拟机生成,也可以由运行的方法生成。异常对象中包含了异常事件类型、程序运行状态等必要的信息。

2.捕获异常

异常抛出后,运行时系统从生成对象的代码开始,沿方法的调用栈逐层回溯查找,直到包含相应处理的方法,并把异常对象交给该方法为止,这个过程称为捕获(catch)一个异常。

简单地说,发现异常的代码可以“抛出”一个异常,运行系统“捕获”该异常,交由程序员编写的相应代码进行异常处理。

2、    辨析:finally语句块一定会执行吗?

答:否,只有与 finally 对应的 try 语句块得到执行的情况下finally 语句块才会执行,或是当执行try语句时终止虚拟机命令也会不执行finally语句。

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

要求程序必须具备足够的健壮性,不管用户输入什  么样的内容,都不会崩溃。

源代码:import javax.swing.JOptionPane;

public class Score {

public static void main(String args[])

{

String output = "";

int a =1;

while(a==1)

{

String input = JOptionPane.showInputDialog("请输入成绩(0`100):");

try

{

int score = Integer.parseInt(input);

if(score <0||score>100)

{

JOptionPane.showMessageDialog(null,"错误请重输");

a=1;

}

else if(score<60)

{

output  = "不及格";

a=0;

}

else if(score<=70)

{

output ="及格";

a=0;

}

else if(score<=80)

{

output = "中";

a=0;

}

else if(score<=90)

{

output = "良";

a=0;

}

else if(score<=100)

{

output ="优";

a=0;

}

}

catch(Exception e)

{

JOptionPane.showMessageDialog(null,"errors occur!请输入整数");

a=1;

}

}

JOptionPane.showMessageDialog(null,output);

System.exit(0);

}

}

运行截图:

多态与异常处理ppt作业的更多相关文章

  1. JAVA 多态和异常处理作业——动手动脑以及课后实验性问题

    1.  阅读以下代码(CatchWho.java),写出程序运行结果: 1)  源代码 public class CatchWho { public static void main(String[] ...

  2. day 25 面向对象之接口、抽象类、多态、异常处理、反射、断言

    复习 '''继承​1.父类:在类后()中写父类们class A:passclass B:passclass C(A, B):pass​2.属性查找顺序:自己 -> ()左侧的父类 -> 依 ...

  3. python的继承多态以及异常处理

    1.单继承 # 动物类 class Animal(object): def __init__(self, name): self. __name = name def run(self): print ...

  4. 接口与继承ppt作业

    问:为什么子类的构造方法在运行之前,必须调用父类的构造方法?能不能反过来?为什么不能反过来? 答:子类拥有父的成员变量和成员方法,如果不调用,则从父类继承而来的成员变量和成员方法得不到正确的初始化.不 ...

  5. java多态与异常处理——动手动脑

    编写一个程序,此程序在运行时要求用户输入一个 整数,代表某门课的考试成绩,程序接着给出“不及格”.“及格”.“中”.“良”.“优”的结论. 要求程序必须具备足够的健壮性,不管用户输入什 么样的内容,都 ...

  6. 电路ppt作业

    例二 例三 3.例一

  7. java-08多态与异常处理

    1.运行以下代码: public class ParentChildTest { public static void main(String[] args) { Parent parent=new ...

  8. java练习——多态与异常处理

    1.   上面的程序运行结果是什么? 2.   你如何解释会得到这样的输出? parent = chlid; 所以child中的方法被赋予parent,所以用child方法输出了child的成员变量: ...

  9. Android开发最佳学习路线图

          为了帮助大家更好的学习Android开发的相关知识,尚观4G智能操作系统研究室(www.up4g.com)为大家制作下面学习路线图:希望能帮助到广大的android爱好者. 在開始之前我们 ...

随机推荐

  1. 山东省滕州市木石镇化石沟村QQ群116528924

    山东省滕州市木石镇化石沟村QQ群116528924

  2. 编写一个Singleton程序(单例)

    public class Test { private static Test test = new Test(); private Test(){}//构造方法私有化 private static ...

  3. 数据库中Schema和Database有什么区别

    在MySQL中创建一个Schema好像就跟创建一个Database是一样的效果,在SQL Server和Orcal数据库中好像又不一样. 目前我只能理解,在mysql中 schema<==> ...

  4. python3.5学习笔记:linux6.4 安装python3 pip setuptools

    前言: python3应该是python的趋势所在,当然目前争议也比较大,这篇随笔的主要目的是记录在linux6.4下搭建python3环境的过程 以及碰到的问题和解决过程. 另外,如果本机安装了py ...

  5. Hypernetes简介

    好久没有更新博客了,今天给大家介绍下最近在Hypernetes上做的工作,这个也是之前在微信群里的一个分享. Hypernetes是一个真正多租户的Kubernetes Distro. Hyperne ...

  6. [ZZ] Equal Error Rate (EER)

    这篇博客很全面 http://www.cnblogs.com/cdeng/p/3471527.html ROC曲线 1.混淆矩阵(confusion matrix) 针对预测值和真实值之间的关系,我们 ...

  7. 关于Git的网址

    25个 Git 进阶技巧:[http://www.imooc.com/article/1089] Git版本控制与工作流:[http://www.imooc.com/article/1068]

  8. php 函数汇总

    extract 从数组中将变量导入到当前的符号表 $arr['age'] = 30; $arr['name'] = 'bluesky'; $arr['sex'] = 'male'; var_dump( ...

  9. Arrays和Collection之间的转换

    1.将数组转换成固定大小的列表: public static <T> List<T> asList(T... a)参数 T... a:数组元素 返回值 List<T> ...

  10. js正则表达式学习

    //几种字符串操作:var str = 'abcdef'; alert(str.search('b')); //弹出1:返回的是b在str中的位置:如果找不到返回-1: alert(str.subst ...