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