实 验 报 告
课程名称 Java 语言程序设计
专业班级
计算机 1542
姓
学
名
号
庞俊伟
1511411222
计算机技术与工程学院
和谐 勤奋 求是 创新
实验教学考核和成绩评定办法
1. 课内实验考核成绩,严格按照该课程教学大纲中明确规定的比重执行。实验成绩不
合格者,不能参加课程考试,待补做合格后方能参加考试。
2. 单独设立的实验课考核按百分制评分,考核内容应包括基本理论、实验原理和实验。
3. 实验考核内容包括:1)实验预习;2)实验过程(包括实验操作、实验记录和实验
态度、表现);3)实验报告;权重分别为 0.2 、0.4 、 0.4;原则上根据上述三个方
面进行综合评定。学生未取得 1)和 2)项成绩时,第 3)项成绩无效。
4. 实验指导教师应严格按照考核内容分项给出评定成绩,并及时批改实验报告,给出
综合成绩,反馈实验中出现的问题。实验成绩在教师手册中有记载。
实验报告主要内容
一. 实验目的
二. 实验仪器及设备
三. 实验原理
四. 实验步骤
五. 实验记录及原始记录
六. 数据处理及结论
七. 实验体会(可选项)
注:1. 为了节省纸张,保护环境,便于保管实验报告,统一采用 A4 纸,实验报告建议双面打印(正文采
用宋体五号字)或手写,右侧装订。
2. 实验类别指验证、演示、综合、设计、创新(研究)、操作六种类型实验。
3. 验证性实验:是指为了使学生巩固课程基本理论知识而开设的强调演示和证明,注重实验结果(事
实、概念或理论)的实验。
4. 综合性实验:是指实验内容涉及本课程的综合知识或本课程相关的课程知识的实验。
5. 设计性实验:是指给定实验目的、要求和实验条件,由学生自行设计实验方案并加以实现的实验。
实验题目
面向对象程序设计基础 2
实验室 机房 9309 实验时间
2016 年 9 月 29 日
实验类别 验证
同组人数
1
成 绩
指导教师签字:
一、
实验目的
掌握 Java 面向对象程序设计中类、对象、继承、接口、包等概念与应用,能够
熟练编写 OOP 程序。
二、
实验内容
1.设计一个汽车类 Auto,其中包含一个表示速度的 double 型成员变量 speed 和表
示启动的 start0 方法、表示加速的 speedUp()方法以及表示停止的 stop()方法。
再设计一个 Auto 的子类 Bus,表示公共汽车,在 Bus 类中定义一个 int 型的、表
示乘客数的成员变量 passengers, 另外定义两个方法 gotOn()和 gotOff()表示乘客上车
和下车。编写一个应用程序,测试 Bus 类的使用。
2. 定义一个名为 Cuboid 长方体类,使其继承 RectangleNew 矩形类(包括:成
员变量:长(double l)、宽(double w ),成员方法:矩形的面积 area()),其中包含一个
表示高的 double 型成员变量 height,定义一个构造方法 Cuboid(double length, double
width, double height)和一个求长方体体积的 volume()方法。编写一个程序,求一个长、
宽、高分别为 10、5、2 的长方体的体积。
3.编写主类,求两数的最大公约数;写子类,求两数的最小公倍数。(要求利用
重写父类的方法来实现)
*4.调试例题
实验过程、结果(截图)、体会
三、
1.程序代码:
public class Auto {
public double speed;
public void Start()
{
speed = 1;
}
public void SpeedUp()
{
speed+=10;
}
public void Stop()
{
speed = 0;
}
}
class Bus extends Auto{
public int passangers;
public void GotOn()
{
passangers++;
}
public void GotOff()
{
if(passangers!=0)passangers--;
}
public static void main(String[] args)
{
Bus b = new Bus();
b.Start();
System.out.println("汽车的起速:"+b.speed);
b.SpeedUp();
System.out.println("汽车加速后的速度:"+b.speed);
b.Stop();
System.out.println("汽车停下的速度:"+b.speed);
b.GotOn();
b.GotOn();
b.GotOn();
b.GotOn();
System.out.println("乘客数量:"+b.passangers);
b.GotOff();
System.out.println("下车后的乘客数量:"+b.passangers);
}
}
程序截图:
2.程序代码:
public class RectangleNew {
public double length,wide;
public RectangleNew()
{
}
public RectangleNew(double a,double b)
{
length=a;
wide=b;
}
public void Area()
{
System.out.println("矩形的面积为:"+length*wide);
}
}
class Cuboid extends RectangleNew
{
public double height;
public Cuboid(double length, double wide, double height)
{
this.length=length;
this.wide=wide;
this.height=height;
}
public void volume()
{
System.out.println("长方体的面积为:"+length*wide*height);
}
public static void main(String[] args) {
// TODO Auto-generated method stub
RectangleNew r=new RectangleNew(10,5);
r.Area();
Cuboid c=new Cuboid(10,5,2);
c.volume();
}
}
程序截图:
3.程序代码:
public class A {
int a=24,b=36;
public void Fun()
{
int i,j=1;
for(i=2;i
A p1=new A();
B p2=new B();
p1.Fun();
p2.Fun();
}
}
程序截图:
四、实验体会
本次实验的考察点是 java 中的继承,在接触题的同时考虑好抽象的子类与父类的关系,在
相应的类中创建相应的数据变量进行使用。另外注意子类与父类对象的创建与调用数据的关系。
掌握好抽象的思维就可以很好的利用继承关系实现以小见大的效果,应该结合老师的课件和习题
中的经验熟练的掌握。