面向对象程序设计-实验报告模板

淮海工学院计算机工程学院

实验报告书

课程名: 面向对象程序设计

题 目: 实验3Java面向对象编程初步(1) 班 级: D计算机131

学 号: 2013132862 姓 名: 徐春盼

评语: 成绩: 指导教师: 批阅时间: 年 月 日 《 面向对象程序设计 》实验报告 - 1 -

一、目的与要求

1.掌握Java面向对象深入编程的知识

学会运用属性的继承和隐藏、方法的继承、重载与覆盖、构造函数的继承与重载等来实现

型、接口的定义、接口的回调及多态编程。

Java的继承与多态的思

想;理解Java的包、接口与异常处理机制,正确运用异常处理、包、接口、内部类、匿名类等知识点,实现对象的上转

二、实验内容或题目

1.根据图3-1所示类图编写对应的图形类,其中,第一层的“图形”为父类,定义为抽象类,其中包含2个保护属性、2个实例方法、2个抽象方法;第二层的3种形状是继承于“图形”的子类,各子类除继承父类的2个属性之外,增加各自不同的属性,各图形类实现求周长、求面积的方法呈多态。

2.在例2-6编写的图书管理类基础上,为图书馆类增加按书名和作者名联合查询的功能 三、实验步骤与源程序

实验1源程序:

import rentbook.DecF; abstract class Shapes { }

class Circle extends Shapes {

int radius; Circle(int r)

static final double pi=3.14; double circumference; double area;

abstract void setCircumference(); abstract void setArea();

public double getCircumference() {

return DecF.DecD(circumference); }

public double getArea() {

return DecF.DecD(area); }

《 面向对象程序设计 》实验报告

}

class Rectangle extends Shapes {

int height; int width;

Rectangle(int h,int w) {

height=h; width=w; } { radius=r; }

public void setCircumference() {

circumference=2*pi*radius; }

public void setArea() {

area=pi*radius*radius; }

- 2 -

public void setCircumference() {

circumference=2*(height+width); }

public void setArea() {

area=height*width; } }

class Triangle extends Shapes {

int sidea; int sideb; int sidec;

Triangle(int a,int b,int c) { sidea=a; sideb=b; sidec=c; }

public void setCircumference() {

circumference=sidea+sideb+sidec; }

public void setArea()

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4