内容发布更新时间 : 2024/12/23 2:01:58星期一 下面是文章的全部内容请认真阅读。
D:\\JAVA\\XT>java Exer6_2 正常:d=16 异常处理结束! 算术异常! 异常处理结束! 正常:d=12 异常处理结束! 下标越界异常! 异常处理结束! 6-3
public class Exer6_3 {
public static void main(String args[]) {
int array1[]={6,0,8}; for(int i=0;i<=;i++) {
try {
int d=100/array1[i]; \正常:d=\ }
catch(RuntimeException e) {
\异常:\ }
finally {
\异常处理结束!\\n\ } } } }
运行该程序后,输出结果如图所示:
D:\\JAVA\\XT>java Exer6_3 正常:d=16 异常处理结束! 异常: zero 异常处理结束! 正常:d=12 异常处理结束! 异常:异常处理结束! 6-4
public class Exer6_4 {
public static void Test() {
int a[]=new int[3]; for(int i=0;i<=;i++) {
try {
a[i]=i+5;
\正常:a[\ }
catch(ArrayIndexOutOfBoundsException e) {
\异常:+()\ throw e; } } }
public static void main(String args[]) {
try {
Test(); }
finally {
\异常处理结束!\\n\ } } }
运行该程序后,输出结果如图:
D:\\JAVA\\XT>java Exer6_4 正常:a[0]=5 正常:a[1]=6 正常:a[2]=7 异常: 3 异常处理结束! Exception in thread “main” at <:10> at
class myException extends Exception {
static int a=0
myException(String s) {
super(s); a++; }
String show() {
return\自定义异常出现的次数:\ } }
Public class Exer6_5 {
static void Test() throws myException {
myException e;
e=new myException(\自定义异常\\n\ throw e; }
Public static void main(String args[]) {
for(int i=0;i<3;i++) {
try {
Test(); }
catch(myException e) {
运行该程序后,输出结果如图所示:
D:\\JAVA\\XT>java Exer6_5 自定义异常出现的次数:1 myException:自定义异常 自定义异常出现的次数:2 myException:自定义异常 自定义异常出现的次数:3 myException:自定义异常 5.简单回答题
5 检测异常事件必须使用什么语句
答:try语句
6 catch()方法的作用是什么该方法用户能否调用
答: 用来处理try块中检测出的异常事件。 7 catch()方法中异常类型应与什么相符
答:与生成的异常事件类型相符。 8 异常示被捕获到将会出现什么现象
答:try语句后边的惯常处理代码将不被执行,通常使用finally语句提供一个统一出口。
9 在一个try语句的程序代码块中可以捕获多个异常吗
答:可以
10 使用throw语句抛出的是类型还是对象
答:抛出的是对象。
11 捕获到的异常还可以再抛出吗
答:可以。
12 Finally语句块中的代码何时被执行
答:在异常事件处理的方法catch()执行后执行。 13 语句throw的作用是什么
答:抛出所检测到的异常。 14 异常类Exception的父类是什么
答:是Throwable类。 编程题
1. 编程实现下述异常,并输出显示适当的错误信息。
2-1 数组下标越界异常ArrayIndexOutOfBoundsException类型。例如,
char ch[]=new char[5];
ch[5]='m';NullPointerException.
6-2 定义一个circle类,其中有求面积的方法,当圆的半径小于0时,抛出一个自定义的异常。编程实现之: 程序内容如下;
class Circle extends Exception {
double r; Circle()
{ }
Circle(double i) {r=i;}
public double getr() {return r;}
public double Area() {
return *r*r; }
}
public class pro6_3 {
public static void main(String args[]) {
Circle c=new Circle; try {
if()<0) {
Circle ee=new Circle(); throw ee; }
catch(Circle e) {
\自定义异常:\ } } }
运行该程序后,输出显示如下结果: 自定义异常:Circle 如果将语句
Circle c=new Circle; 必为
Circle c=new Circle;
输出结果如何请读者上机试试。