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. 05:统计单词数【NOIP2011复赛普及组第二题】

    05:统计单词数 总时间限制:  1000ms 内存限制:  65536kB 描述 一般的文本编辑器都有查找单词的功能,该功能可以快速定位特定单词在文章中的位置,有的还能统计出特定单词在文章中出现的次 ...

  2. windows下使用ffmpeg进行视频转换和截图。

    author:fanfq(xiaoban) Email:fangqing.fan#gmail.comlink:http://fanfq.iteye.com/admin/blogs/655569chan ...

  3. 解除Team Foundation Server 5个用户的限制

    因为所有的用户必须加入到Team Foundation Licensed Users组内才能连接上TFS; 所以只要手工修改数据库,就可以破解5用户限制了.我们以TFSGuest4帐户做测试. 具体操 ...

  4. 实现Cookie跨域共享

    实现原理:cookie是不能跨域访问的,但是在二级域名是可以共享cookie的 概念说明:站点1=a.abc.com   站点2=b.abc.com 实现步骤:1. 配置两个站点的webconfig ...

  5. WPF嵌入Unity3D代码下载

    这不是大家想找的资源,这是给我的一个帖子用的.当然可以使用u3d自带编译器打开.这是给wpf 嵌入u3d的例子贴用http://bbs.csdn.net/topics/391853486?page=1 ...

  6. nodeJS---express4+passport实现用户注册登录验证

    网上有很多关于passport模块使用方法的介绍,不过基本上都是基于express3的,本文介绍在express4框架中使用passport模块. 前言 passport是一个功能单一,但非常强大的一 ...

  7. Windows下修改Oracle监听端口

    先放开防火墙的端口,再来改监听端口. 只有一个实例: net stop OracleOraDb11g_home1TNSListener 再运行 NET Manager 修改实例名与Listener的端 ...

  8. 由system.currentTimeMillis() 获得当前的时间

    System类代表系统,系统级的很多属性和控制方法都放置在该类的内部.该类位于java.lang包. currentTimeMillis方法 public static long currentTim ...

  9. Android屏幕适配全攻略 (转载)

    http://blog.csdn.net/jdsjlzx/article/details/45891551 https://github.com/hongyangAndroid/AndroidAuto ...

  10. MVC 访问IFrame页面Session过期后跳转到登录页面

    Web端开发时,用户登录后往往会通过Session来保存用户信息,Session存放在服务器,当用户长时间不操作的时候,我们会希望服务器保存的Session过期,这个时候,因为Session中的用户信 ...