文档详情

java面向对象图形继承关系报告.doc

发布:2017-03-23约5.93千字共14页下载文档
文本预览下载声明
- 1 - 图形关系报告 关系简介 我们选取了Shape 为根类,所有图形均以Shape类为父类,继承Shape类的两个方法:draw(),eraser().其他图形间以包含关系为主,复杂图形由一个或者若干个简单图形,再添加新的属性所组成. 同时,引入两个接口类AresCountable, VolumeCountable.分别提供面积计算和体积计算的方法接口. 关系图 此符号表示组成~ 此颜色框表示新增加属性 接口简介 AresCountable 此接口用于可计算面积的图形,提供一个计算面积的方法. 接口定义 public interface AresCountable 接口方法 public double getAres(); VolumeCountable 此接口用于可计算体积的图形,提供一个计算体积的方法接口. 接口定义 public interface VolumeCountable 接口方法 public double getVolume(); 各个类的简介 Shape Shape 类使所有后面图形类的父类.定义为抽象类,其中包含两个抽象函数,等待后面继承类 具体实现. 类定义 public abstract class Shape // 定义为抽象类 构造函数 无 成员 无 方法 public abstract void draw(); public abstract void eraser(); // 定义两个抽象函数,等待以后的继承类实现. Point Point 类是这次图形集成结构的最基本的可实现类,以后的平面图形和立体图形均由Point类组成. 类定义 public class Point extends Shape // 继承抽象类Shape 成员 private double x,y; // 点的横纵坐标 构造函数 public Point(double x, double y) //由坐标构造点 public Point(Point p) //由一个已知点构造点 方法 public double getX() public double getY() @Override public void draw() @Override public void eraser() // 对Shape 类里两个抽象函数进行实现,并在以后的继承类里将被重写 Line Line 类,包含两个Point 成员,作为起点和终点. 类定义 public class Line extends Shape 成员 private Point p1,p2;// 分别为起点和重点. 构造函数 public Line(double x, double y, double x1,double y1) public Line(Point p1,Point p2) 方法 public Point getP1() public Point getP2() public double getLength() // 调用此函数,返回该对象先端的长度 public static double getLength(Point a,Point b) // 调用这个类函数,将返回计算参数中两个点的距离 @Override public void draw() @Override public void eraser() Rectangle Rectangle 类,矩形,包含一个Point 类成员,作为左上角的定位点,新增成员长和宽. 引入AresCountable 接口,获得计算面积的能力. 类定义 public class Rectangle extends Shape implements AresCountable 类成员 private double length,width; private Point p; 构造函数 public Rectangle(double x,double y,double length,double width) public Rectangle(Point p,double length,double width) public Rectangle(Rectangle q) 方法 public Point getP() public double getL() public double getW() @Override public void draw() @Override public v
显示全部
相似文档