JAVA类的继承实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《面向对象程序设计》实验报告
实验六、类的继承
课程代码:1H10500学分:6
实验类型:实践型实验学时:4个学时
实验时间:2017.11.23 实验地点:5407
班级:计算机164 专业:计算机科学与技术专业学号:2016011147 姓名:林文辉
一、实验目的
(1)学习JAVA继承的思想
(2)了解JAVA语言继承的实现
二、实验内容及步骤
内容:在圆柱体类Cylinder里,用一个构造方法调用另一个构造方法
步骤:方案的设计与分析(类结构图。。。。。。)
(1)找出对象的共同属性和行为
(2)设计代表共同状态与行为的类
(3)决定子类是否需要让某项行为有特定的不同的运行方式
(4)寻找更多抽象化的机会
(5)完成类的继承层次
三、实验过程及结果
实验1代码:
abstract class Graphics {
abstract void parameter();
abstract void area();
}
class Rectangle extends Graphics{
double h,w;
Rectangle(double u,double v){h=u;w=v;}
void parameter() {
S ystem.out.println("矩形高度为:"+h+",矩形宽度为:"+w);
}
void area() {
S ystem.out.println("矩形面积为:"+(h*w));
}
}
class Circle extends Graphics{
double r;
String c;
Circle(double u,String v){r=u;c=v;}
void parameter() {
System.out.println("圆半径为:"+r+",圆颜色为:"+c);
}
void area() {
System.out.println("圆面积为:"+(Math.PI*r*r));
}
}
class ExamAbs{
public static void main(String args[]) {
Rectangle rec=new Rectangle(2.0, 3.0);
Circle cir=new Circle(4.0, "Red");
Graphics[]g= {rec,cir};
for(int i=0;i g[i].parameter(); g[i].area(); } } } 结果: (该部分主要记录实验过程,包括实验代码及运行结果) 四、实验小结 Java中提供了this关键字,this关键字总是指向调用该方法的对象。 根据this出现位置的不同,this作为对象的默认引用有两种情形: a.构造器中引用该构造器正在初始化的对象 b.在方法中引用调用该方法的对象 this最大的作用就是让类中一个方法,访问该类的另一个方法或实例变量。 把错误拷贝,并且给出修正过程。 (该部分主要针对实验结果进行理论及实际运行结果的具体分析,主要阐述为什么会有这个结果,程序填空实验可以将三、四两部分内容结合起来进行分析说明)