Java语言实验报告三答案.docx
《Java语言实验报告三答案.docx》由会员分享,可在线阅读,更多相关《Java语言实验报告三答案.docx(18页珍藏版)》请在冰豆网上搜索。
Java语言实验报告三答案
《Java语言与面向对象程序设计基础》课程
实验报告三
姓名:
学号:
111**********
实验题1
[实验要求]
为本实验中程序添加异常处理机制
记录修改后程序和运行结果[实验程序]
程序1-1
classA{}
classBextendsA{}
publicclassClassCastExceptionTest{
publicstaticvoidmain(Stringargs[]){
Aa=newA();
Bb=(B)a;
publicclassClassCastExceptionTest{
publicstaticvoidmain(Stringargs[]){
Aa=newA();
try{
Bb=(B)a;
}catch(ClassCastExceptione){
System.out.println("catchClassCastException!
!
!
");
}
}
}
程序1-2
publicclassArrayIndexOutOfBoundsExceptionTest{
publicstaticvoidmain(Stringarg[]){
inta[]=newint[10];
for(inti=0;i<=10;i++){a[i]=0;}
publicclassArrayIndexOutOfBoundsExceptionTest{
publicstaticvoidmain(Stringarg[]){
inta[]=newint[10];
for(inti=0;i<=10;i++){
try{
a[i]=0;
}catch(ArrayIndexOutOfBoundsExceptione){
System.out.println("catchArrayIndexOutOfBoundsException!
!
!
");
}
}
}
}
程序1-3
publicclassArithmeticExceptionTest{
publicstaticvoidmain(Stringarg[]){
ints=100;
for(inti=-3;i<5;i++){s=s/i;}
publicclassArithmeticExceptionTest{
publicstaticvoidmain(Stringarg[]){
ints=100;
for(inti=-3;i<5;i++){
try{
s=s/i;
}catch(ArithmeticExceptione){
System.out.println(e);
}
System.out.println(s);
}
}
}
程序1-4
publicclassStringException{
publicstaticvoidmain(Stringargs[]){
Strings1=newString("aaaabbbbcccc");
System.out.println(s1);
Strings2;
s2=s1.substring(30);
System.out.println(s2);
}
}
publicclassStringException{
publicstaticvoidmain(Stringargs[]){
Strings1=newString("aaaabbbbcccc");
System.out.println(s1);
Strings2;
try{
s2=s1.substring(30);
System.out.println(s2);
}catch(StringIndexOutOfBoundsExceptione){
System.out.println(e);
}
System.out.println("It'sOK!
");
}
}
[运行结果]
程序1-1
程序1-2
程序1-3
程序1-4
[实验结论与收获]
知道程序异常处理机
实验题2
[实验要求]
在选择“兴趣爱好”的窗体中,有旅游、运动、阅读等选项,编写小程序,完成兴趣爱好的选择,并输出到文本框中。
记录调试过程、步骤、程序和运行结果。
[实验程序]
importjava.awt.*;
importjava.awt.event.*;
classTest2extendsWindowAdapterimplementsItemListener
{Framef;
Panelp;
Checkboxc1,c2,c3;
TextFieldtf;
Buttonb;
publicvoidgo(){
f=newFrame("Test3-2");
p=newPanel();
c1=newCheckbox("旅游");
c2=newCheckbox("运动");
c3=newCheckbox("阅读");
b=newButton("确定");
tf=newTextField();
c1.addItemListener(this);
c2.addItemListener(this);
c3.addItemListener(this);
f.add(p,"Center");
p.add(c1);
p.add(c2);
p.add(c3);
p.add(b);
f.add(tf,"South");
f.addWindowListener(this);
f.setSize(300,400);
f.setVisible(true);
}
publicstaticvoidmain(Stringargs[]){
Test2t=newTest2();
t.go();
}
publicvoiditemStateChanged(ItemEvente){
Stringst="youselected:
";
if(c1.getState()==true){
st=st+c1.getLabel()+"";
}
if(c2.getState()==true){
st=st+c2.getLabel()+"";
}
if(c3.getState()==true){
st=st+c3.getLabel()+"";
}
tf.setText(st);
}
publicvoidwindowClosing(WindowEvente){
System.exit(0);
}
}[运行结果]
[实验结论与收获]
学会了编写程序,定义类,自己又填加了“确定”按钮。
掌握Applet程序中CheckBox、事件的应用。
实验题3
[实验要求]
•在实验2程序上添加菜单,如下图所示
•调试并记录结果
[实验程序]
importjava.awt.*;
importjava.awt.event.*;
classTest3extendsWindowAdapterimplementsItemListener
{Framef;
Panelp;
Checkboxc1,c2,c3;
TextFieldtf;
publicvoidgo(){
f=newFrame("Test3-3");
p=newPanel();
c1=newCheckbox("旅游");
c2=newCheckbox("运动");
c3=newCheckbox("阅读");
c1.addItemListener(this);
c2.addItemListener(this);
c3.addItemListener(this);
p.add(c1);p.add(c2);
p.add(c3);f.add(p,"Center");
tf=newTextField();
f.add(tf,"South");
f.addWindowListener(this);
MenuBarmb=newMenuBar();
f.setMenuBar(mb);
Menum1=newMenu("文件");
Menum2=newMenu("编辑");
Menum3=newMenu("帮助");
mb.add(m3);mb.add(m2);mb.add(m1);
Menum4=newMenu("打开");
MenuItemmi1=newMenuItem("新建");
MenuItemmi2=newMenuItem("保存");
CheckboxMenuItemmi3=newCheckboxMenuItem("显示");
MenuItemmi4=newMenuItem("退出");
m1.add(m4);
m1.addSeparator();
m1.add(mi1);
m1.add(mi2);
m1.add(mi3);
m1.addSeparator();
m1.add(mi4);
CheckboxMenuItemm2_1=newCheckboxMenuItem("视图");
m2.add(m2_1);
CheckboxMenuItemm3_1=newCheckboxMenuItem("版权");
m3.add(m3_1);
MenuItemmi41=newMenuItem("Openword");
MenuItemmi42=newMenuItem("Openexcel");
m4.add(mi41);
m4.add(mi42);
f.setSize(300,400);
f.setVisible(true);
}
publicstaticvoidmain(Stringargs[]){
Test3t=newTest3();
t.go();
}
publicvoiditemStateChanged(ItemEvente){
Stringst="youselected:
";
if(c1.getState()==true){
st=st+c1.getLabel()+"";
}
if(c2.getState()==true){
st=st+c2.getLabel()+"";
}
if(c3.getState()==true){
st=st+c3.get