XX学院java实验报告
} }
三、实验要求
1、根据题目要求完成程序中没有完成的模块。 2、写好上机报告。
实验六 异常处理
一、实验目的
1.熟悉异常的抛出与捕获的含义; 2.掌握异常捕获与处理的方法; 3.能自定义异常。 二、实验内容
现在多数学校的成绩管理都由计算机进行管理,这就需要有相应的应用程序。编写成绩管理应用程序,其中有成绩录入模块,成绩录入过程中,难免出现录入数据的类型出现错误,或录入的成绩不在合理的范围。在成绩录入过程中,若出现上述错误,程序应该如何处理。 程序框架如下,将代码补充完整:
import javax.swing.JOptionPane;
class 负分异常 extends Exception //当录入了负分时。此处应用了自定义异常 { }
class 高分异常 extends Exception //当录入分超过100时。应用了自定义异常 { }
public class ExceptionDemo {
负分异常(int i){
System.out.println(\分数为负数\); }
高分异常(int i ){
System.out.println(\分数过高\); }
static final int number=2; int score[]=new int[number];
public void 检查分数(int 分数) throws 负分异常,高分异常 //下面方法中判断如果录入的成绩不合{ if(分数 >100) throw new 高分异常(分数); //通过throw,人工抛出异常 if(分数 <0) throw new 负分异常(分数); }
public void 录入成绩()
13
理,则抛出异常,但本方法并不处理异常,仅声明了异常
XX学院java实验报告
{ int i;
for(i=0;i score[i]=Integer.parseInt(JOptionPane.showInputDialog(\请输入第\+(i+1) +\个同学的成绩\)); }catch(NumberFormatException e) //在try{…….}catch间的语句中若产生异常,则捕获 异常,直接进行异常处理 { } } 14 try{ 检查分数(score[i]); //在检查分数模块中,可能产生高分异常对象,也可能产生低分异}catch(高分异常 e){ System.out.println(e); 常对象,根据不同情况,进行不同处理 }catch(负分异常 e){ System.out.println(e); } } } public void 输出成绩() { System.out.println(score[0]); System.out.println(score[1]); } public static void main(String arg[]) { ExceptionDemo demo = new ExceptionDemo(); demo.录入成绩(); demo.输出成绩(); } XX学院java实验报告 三、实验要求 1、根据题目要求完成程序中没有完成的模块。 2、写好上机报告。 实验七:图形用户界面设计(一) 一、 实验目的: 1. 巩固图形用户界面设计的方法 2. 掌握事件处理的设计方法 二、 实验内容: 1.绘制如下形式的图形界面,要求:窗体背景为蓝色,中间为黄色方格。 import java.awt.*; public class Test{ } class F extends Frame{ public static void main(String args[]){ } new F(); F(){ int x,y,w,h; x = 200;y = 200;w = 200;h = 200; setBounds(x,y,w,h); setBackground(Color.yellow); Panel p = new Panel(); p.setBounds(x/4,y/4,w/2,h/2); p.setBackground(Color.blue); setLayout(null); 15 XX学院java实验报告 } } add(p); setVisible(true); 2. 编写程序,绘制如下格式的界面: import java.awt.*; public class Test{ public static void main(String args[]){ Frame f = new Frame(); f.setLayout(new GridLayout(2,1)); f.setBounds(300,300,300,300); Panel p1 = new Panel(new BorderLayout()); Panel p2 = new Panel(new BorderLayout()); Panel p11 = new Panel(new GridLayout(2,1)); Panel p21 = new Panel(new GridLayout(2,2)); p1.add(new Button(\),BorderLayout.WEST); p1.add(new Button(\),BorderLayout.EAST); p11.add(new Button(\)); p11.add(new Button(\)); p1.add(p11,BorderLayout.CENTER); p2.add(new Button(\),BorderLayout.WEST); p2.add(new Button(\),BorderLayout.EAST); for(int i = 0;i<4;i++){ p21.add(new Button(\)); 16