实验二Java面向对象编程初步2陈正宁123349.docx
- 文档编号:30050294
- 上传时间:2023-08-04
- 格式:DOCX
- 页数:20
- 大小:143.37KB
实验二Java面向对象编程初步2陈正宁123349.docx
《实验二Java面向对象编程初步2陈正宁123349.docx》由会员分享,可在线阅读,更多相关《实验二Java面向对象编程初步2陈正宁123349.docx(20页珍藏版)》请在冰豆网上搜索。
实验二Java面向对象编程初步2陈正宁123349
淮海工学院计算机工程学院
实验报告书
课程名:
面向对象程序设计A
实验题目:
Java面向对象编程初步
(2)
班级:
软嵌151
学号:
2015123349
姓名:
陈正宁
一、实验目的
(1)通过实验,进一步掌握类的定义,尤其是类中方法(包含构造方法)的定义。
掌握对象的创建方法及对象成员变量和方法的调用;
(2)通过编写图形界面的程序,完成对象的创建和调用。
2、实验内容
(1)定义教师类Teacher,包含属性工号,姓名,性别,所在部门,职称,职位,专业,学历;定义若干个构造方法,完成对象的各种初始化需要;定义若干个分别能够获取和修改成员变量的方法,如获取工号/修改工号;获取学历/修改学历等;定义toString()方法,能够输出教师的所有相关信息。
(50分)
(2)编写字符界面的程序,能够创建若干个教师对象,并输出教师的相关信息;(30分)
(3)编写图形界面的程序,能够创建若干个教师对象,并输出教师的相关信息。
(20分)
三、实验步骤
(1)字符界面的程序
classTeacher//定义一个名为Teacher公共类
{
Stringnumber;//工号
Stringname;//姓名
Stringsex;//性别
Stringdepartment;//部门
Stringtitle;//职称
Stringpost;//职位
Stringmajor;//专业
Stringeducation;//学历
Teacher()//构造方法1
{
number="";
name="";
sex="";
department="";
title="";
post="";
major="";
education="";
}
Teacher(Stringname,Stringsex)//构造方法2
{
this();
this.name=name;
this.sex=sex;
}
/*更改一些特性或者获取信息*/
publicvoidsetnumber(Stringnewnumber)
{
number=newnumber;
}
publicStringgetnumber()
{
returnnumber;
}
publicvoidsetname(Stringnewname)
{
name=newname;
}
publicStringgetname()
{
returnname;
}
publicvoidsetsex(Stringnewsex)
{
sex=newsex;
}
publicStringgetsex()
{
returnsex;
}
publicvoidsetdepartment(Stringnewdepartment)
{
department=newdepartment;
}
publicStringgetdepartment()
{
returndepartment;
}
publicvoidsettitle(Stringnewtitle)
{
title=newtitle;
}
publicStringgettitle()
{
returntitle;
}
publicvoidsetpost(Stringnewpost)
{
post=newpost;
}
publicStringgetpost()
{
returnpost;
}
publicvoidsetmajor(Stringnewmajor)
{
major=newmajor;
}
publicStringgetmajor()
{
returnmajor;
}
publicvoidseteducation(Stringneweducation)
{
education=neweducation;
}
publicStringgeteducation()
{
returneducation;
}
publicStringtoString()//重写toString输出方法
{
return"\n教师工号:
"+number+";姓名:
"+name+";性别:
"+sex+";所在部门:
"+department
+";\n职称:
"+title+";职位:
"+post+";专业:
"+major+";学历:
"+education+"\n";
}
}
publicclassshiyan4_1
{
publicstaticvoidmain(Stringargs[])
{
System.out.println("初始情况如下");
Teacherteacher1=newTeacher();//调用构造方法1
Teacherteacher2=newTeacher("张老师","男");//调用构造方法2
Teacherteacher3=newTeacher("刘老师","男");
Teacherteacher4=newTeacher("李老师","女");
Teacherteacher5=newTeacher("施老师","女");
Teacherteacher6=newTeacher("闵老师","男");
Teacherteacher7=newTeacher("王老师","女");
System.out.println(teacher1.toString()+teacher2.toString()+teacher3.toString()+teacher4.toString()
+teacher5.toString()+teacher6.toString()+teacher7.toString());
System.out.println("教师信息如下");
teacher1.setnumber("1000");
teacher1.setname("孙老师");
teacher1.setsex("男");
teacher1.setdepartment("电子工程学院");
teacher1.settitle("讲师");
teacher1.setpost("教师");
teacher1.setmajor("模拟电路");
teacher1.seteducation("博士");
teacher2.setnumber("1001");
teacher2.setdepartment("计算机工程学院");
teacher2.settitle("讲师");
teacher2.setpost("教师");
teacher2.setmajor("计算机硬件");
teacher2.seteducation("硕士");
teacher3.setnumber("1002");
teacher3.setsex("女");
teacher3.setdepartment("理学院");
teacher3.settitle("讲师");
teacher3.setpost("教师");
teacher3.setmajor("数学分析与统计");
teacher3.seteducation("硕士");
teacher4.setnumber("1003");
teacher4.setdepartment("外国语学院");
teacher4.settitle("讲师");
teacher4.setpost("教师");
teacher4.setmajor("大学英语");
teacher4.seteducation("硕士");
teacher5.setnumber("1004");
teacher5.setdepartment("计算机工程学院");
teacher5.settitle("副教授");
teacher5.setpost("副院长");
teacher5.setmajor("计算机");
teacher5.seteducation("硕士");
teacher6.setnumber("1005");
teacher6.setdepartment("机械工程学院");
teacher6.settitle("教授");
teacher6.setpost("教师");
teacher6.setmajor("工程力学");
teacher6.seteducation("博士");
teacher7.setnumber("1009");
teacher7.setdepartment("理学院");
teacher7.settitle("讲师");
teacher7.setpost("教师");
teacher7.setmajor("线性代数");
teacher7.seteducation("硕士");
System.out.println(teacher1.toString()+teacher2.toString()+teacher3.toString()+teacher4.toString()
+teacher5.toString()+teacher6.toString()+teacher7.toString());
}
}
(2)图形界面程序
importjavax.swing.*;
importjava.awt.*;
importjava.awt.event.*;
classTeacher//定义一个名为Teacher公共类
{
Stringnumber;//工号
Stringname;//姓名
Stringsex;//性别
Stringdepartment;//部门
Stringtitle;//职称
Stringpost;//职位
Stringmajor;//专业
Stringeducation;//学历
Teacher()//构造方法1
{
number="";
name="";
sex="";
department="";
title="";
post="";
major="";
education="";
}
Teacher(Stringname,Stringsex)//构造方法2
{
this();
this.name=name;
this.sex=sex;
}
/*更改一些特性或者获取信息*/
publicvoidsetnumber(Stringnewnumber)
{
number=newnumber;
}
publicStringgetnumber()
{
returnnumber;
}
publicvoidsetname(Stringnewname)
{
name=newname;
}
publicStringgetname()
{
returnname;
}
publicvoidsetsex(Stringnewsex)
{
sex=newsex;
}
publicStringgetsex()
{
returnsex;
}
publicvoidsetdepartment(Stringnewdepartment)
{
department=newdepartment;
}
publicStringgetdepartment()
{
returndepartment;
}
publicvoidsettitle(Stringnewtitle)
{
title=newtitle;
}
publicStringgettitle()
{
returntitle;
}
publicvoidsetpost(Stringnewpost)
{
post=newpost;
}
publicStringgetpost()
{
returnpost;
}
publicvoidsetmajor(Stringnewmajor)
{
major=newmajor;
}
publicStringgetmajor()
{
returnmajor;
}
publicvoidseteducation(Stringneweducation)
{
education=neweducation;
}
publicStringgeteducation()
{
returneducation;
}
publicStringtoString()//重写toString输出方法
{
return"\n教师工号:
"+number+";姓名:
"+name+";性别:
"+sex+";所在部门:
"+department
+";\n职称:
"+title+";职位:
"+post+";专业:
"+major+";学历:
"+education+"\n";
}
}
publicclassshiyan4_2
{
publicstaticvoidmain(Stringargs[])
{
newFrameInOut();
}
}
classFrameInOutextendsFrameimplementsActionListener
{
JButtonbtn1,btn2,btn3;
JTextAreata;
JPanelp1,p2,p3;
FrameInOut()
{
super("教师信息!
");
this.setFont(newFont("楷体",Font.BOLD,100));
this.setBackground(Color.pink);
btn1=newJButton("初始信息");
btn2=newJButton("教师信息");
btn3=newJButton("退出");
ta=newJTextArea(20,50);
p1=newJPanel();
p2=newJPanel();
p3=newJPanel();
p1.add(btn1);
p1.add(btn2);
p1.add(btn3);
p2.add(ta);
add(p1);
add(p2);
setLayout(newFlowLayout());
p1.setBackground(Color.yellow);
btn1.addActionListener(this);
btn2.addActionListener(this);
btn3.addActionListener(this);
setSize(600,360);
setVisible(true);
}
publicvoidactionPerformed(ActionEvente)
{
Teacherteacher1=newTeacher();//调用构造方法1
Teacherteacher2=newTeacher("张老师","男");//调用构造方法2
Teacherteacher3=newTeacher("刘老师","男");
Teacherteacher4=newTeacher("李老师","女");
Teacherteacher5=newTeacher("施老师","女");
Teacherteacher6=newTeacher("闵老师","男");
Teacherteacher7=newTeacher("王老师","女");
if(e.getSource()==btn1)
{
ta.setText(null);
ta.setForeground(Color.black);
ta.setFont(newFont("楷体",Font.BOLD,16));
ta.append(teacher1.toString()+teacher2.toString()+teacher3.toString()+teacher4.toString()
+teacher5.toString()+teacher6.toString()+teacher7.toString());
}
teacher1.setnumber("1000");
teacher1.setname("孙老师");
teacher1.setsex("男");
teacher1.setdepartment("电子工程学院");
teacher1.settitle("讲师");
teacher1.setpost("教师");
teacher1.setmajor("模拟电路");
teacher1.seteducation("博士");
teacher2.setnumber("1001");
teacher2.setdepartment("计算机工程学院");
teacher2.settitle("讲师");
teacher2.setpost("教师");
teacher2.setmajor("计算机硬件");
teacher2.seteducation("硕士");
teacher3.setnumber("1002");
teacher3.setsex("女");
teacher3.setdepartment("理学院");
teacher3.settitle("讲师");
teacher3.setpost("教师");
teacher3.setmajor("数学分析与统计");
teacher3.seteducation("硕士");
teacher4.setnumber("1003");
teacher4.setdepartment("外国语学院");
teacher4.settitle("讲师");
teacher4.setpost("教师");
teacher4.setmajor("大学英语");
teacher4.seteducation("硕士");
teacher5.setnumber("1004");
teacher5.setdepartment("计算机工程学院");
teacher5.settitle("副教授");
teacher5.setpost("副院长");
teacher5.setmajor("计算机");
teacher5.seteducation("硕士");
teacher6.setnumber("1005");
teacher6.setdepartment("机械工程学院");
teacher6.settitle("教授");
teacher6.setpost("教师");
teacher6.setmajor("工程力学");
teacher6.seteducation("博士");
teacher7.setnumber("1009");
teacher7.setdepartment("理学院");
teacher7.settitle("讲师");
teacher7.setpost("教师");
teacher7.setmajor("线性代数");
teacher7.seteducation("硕士");
if(e.getSource()==btn2)
{
ta.setText(null);
ta.setForeground(Color.black);
ta.setFont(newFont("楷体",Font.BOLD,16));
ta.append(teacher1.toString()+teacher2.toString()+teacher3.toString()+teacher4.toString()
+teacher5.toString()+teacher6.toString()+teacher7.toString());
}
if(e.getSource()==btn3)
{
dispose();
System.exit(0);
}
}
}
4、实验结果(结论)
(1)字符界面运行结果
(2)图形界面运行结果
五、实验的分析体会
通过这次实验,对类的定义有更深一层的理解,尤其是类中方法(包含构造方法)的定义。
也学会了对象的创建方法及对象成员变量和方法的调用;然后实行图形界面的转化,图形界面应该有更大的突破,这是不足的地方。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实验 Java 面向 对象 编程 初步 正宁 123349