全国2011年1月Java语言程序设计自考试题 联系客服

发布时间 : 星期日 文章全国2011年1月Java语言程序设计自考试题更新完毕开始阅读543e5ec5d5bbfd0a795673fa

河北工业大学计算机学院网络编程实验报告

实验三:异常处理程序设计

实验目的:

了解Java中异常处理(exception)的作用及常用的异常类,掌握异常处理的设计方法。

实验要求:

理解系统异常处理的机制和创建自定义异常的方法。

实验内容:

1)下面的程序中定义了一个用户程序的异常InsuffivientFoundsException,这个异常用来处理帐户资金不足的逻辑错误。

2)

3)根据题目要求,编写程序并写出运行结果

1、设计一个Java程序,自定义异常类,从命令行(键盘)输入一个字符串,如果该字符串值为“XYZ”,则抛出一个异常信息“This is a XYZ”,如果从命令行输入ABC,则没有抛出异常。(只有XYZ和ABC两种输入)。 代码:

import java.io.*;

class UserExceptionDemo {

public static void main(String args[])throws IOException {

BufferedReader stdin = new BufferedReader(new

- 16 -

河北工业大学计算机学院网络编程实验报告

InputStreamReader(System.in));

System.out.print(\请输入字符串XYZ/ABC:\ String str=stdin.readLine(); try{

if(str==\ {

System.out.println(\ } else {

throw new UserDefineException(); } }

catch(UserDefineException e) {

System.out.println(e.toString()); } } }

class UserDefineException extends Exception {

UserDefineException() {

System.out.println(\ }

public String toString() {

return\ } }

结果:

2、使用命令行方式输入四个参数,分别是姓名、数学成绩、英语成绩、Java成绩,求总成绩和平均成绩,处理数组下标越界、成绩不是数组、成绩输入不合理(不在1-100之间)的异常。要去:自己定义输出成绩不合理的异常。 提示1:数组下标越界异常为:ArrayIndexOutOfBoundsException 成绩不是数组的异常采用Java中的异常:NumberFormatException

- 17 -

河北工业大学计算机学院网络编程实验报告

提示2:自定义的异常通常是Exception的子类。

代码:

import java.io.*; class Score {

public static void main(String args[])throws IOException {

String name;

int info[]=new int[3]; int i;

float sum=0.0f; float avg=0.0f;

System.out.println(\请输入学生的姓名:\ BufferedReader stdin = new BufferedReader(new InputStreamReader(System.in));

name=stdin.readLine();

System.out.println(\请输入学生的数学成绩、英语成绩、Java成绩:\

try{

for(i=0;i<3;i++) {

info[i]=Integer.parseInt(stdin.readLine()); } }

catch(ArrayIndexOutOfBoundsException e1) {

e1.printStackTrace(); }

catch(NumberFormatException e2) {

e2.printStackTrace(); }

for(i=0;i<3;i++) {

int Temp=info[i]; try{

if(Temp<0||Temp>100) {

throw new UserDefineException(); } else

sum+=info[i]; }

catch(UserDefineException e)

- 18 -

河北工业大学计算机学院网络编程实验报告

{

System.out.println(e.toString(Temp)); } }

avg=sum/3.0f;

System.out.println(\ } }

class UserDefineException extends Exception {

UserDefineException() {

System.out.println(\ }

public String toString(int a) {

return\ } }

结果:

- 19 -