大一课程设计---几何图形

上传者: xhay1122 | 上传时间: 2019-12-21 22:00:37 | 文件大小: 23KB | 文件类型: rar
3. 几何图形(满分50分) 版本1:满分 10 分 设计抽象类 GeometricObject 及其子类 Triangle 和Circle。 GeometricObject 类设计要求如下: ■ 一个名为 color 的Color类型的私有数据域,表示对象的颜色 ■ 一个名为 filled 的Boolean类型的私有数据域,表示对象是否 ■ 一个名为 dateCreated 的Date 类型的私有数据域,表示对象的 ■ 一个无参构造方法。 ■ 一个能创建特定 color 和filled 的有参构造方法。 ■ 相关数据域的访问器和修改器。 ■ 两个个名为 draw 和erase的抽象方法。 ■ 一个名为 getArea的抽象方法。 ■ 一个名为 getPerimeter的抽象方法。 ■ 重写 toString 方法。 Triangle 类设计要求如下: ■ 三个名为 side1、side2和 side3 的double 类型的私有数据域表 们的默认值是 1.0。要求三个数据域保留 2 位小数。 ■ 一个无参的构造方法创建默认三角形。 ■ 一个能创建带指定 side1、side2和 side3 的有参构造方法。 ■ 所有三个数据域的访问器和修改器方法。 ■ 父类抽象方法的实现。 ■ 重写 toString 方法。 Circle 类设计要求如下: ■ 一个名为 radius 的double 类型的私有数据域,表示圆的半径,数据域保留2 位小数。 ■ 一个名为 PI 的静态常量,其值为 3.14 ■ 一个无参的构造方法创建默认三角形。 ■ 一个能创建带指定 radius 的有参构造方法。 ■ radius 数据域的访问器和修改器方法。 ■ 父类抽象方法的实现。 ■ 重写 toString 方法。 测试类 TestGeometricObject1 设计要求如下: ■ 一个能随机生成 Circle 类和Triangle 类对象的静态方法 GeometricObject[] RandomCreateGeometricObject() ■ 以随机生成的数组为参数,输出数组中每个对象的基本信息、周长和面积。 ■ 类中其它方法的测试 版本2:满分 20 分 将上面的抽象类GeometricObject 改为接口,接口只保留其中四个抽象方法,声明类 Circle、Triangle 实现该接口,类的基本要求如上,同时为每个类增加一个将当前对象序列化 到指定文件的方法 writeToFile(File f)。 测试类 TestGeometricObject2 设计要求如下: ■ 一个能随机生成 Circle 类和Triangle 类对象的静态方法,该方法将随机生成的象序列 化到指定的文件 GeometricObjects.dat 中,序列化成功返回真,否则返回假。 Boolean RandomCreateGeometricObject() ■ 将GeometricObjects.dat 文件中对象全部读出,存储到 GeometricObject 对象数组中, 然后以此数组为参数,输出数组中每个对象的基本信息、周长和面积。 ■ 类中其它方法的测试。 新增一个类Rectangle ,也实现接口 GeometricObject ,同时修改测试类 TestGeometricObject2 ,体会开-闭原则。 版本3:满分 20 分 在第2 步的基础上设计实现一个具有 GUI 界面的几何图形绘制系统系统,要求实现根 据选择的几何图形类型来绘制和删除相应的图形,其中相关参数应通过界面输入,并可计算 图形的周长和面积。

文件下载

资源详情

[{"title":"( 29 个子文件 23KB ) 大一课程设计---几何图形","children":[{"title":"V3","children":[{"title":".project <span style='color:#111;'> 378B </span>","children":null,"spread":false},{"title":"src","children":[{"title":"Triangle.java <span style='color:#111;'> 2.06KB </span>","children":null,"spread":false},{"title":"TestGeometricObject1.java <span style='color:#111;'> 1.18KB </span>","children":null,"spread":false},{"title":"Rectangle.java <span style='color:#111;'> 1.41KB </span>","children":null,"spread":false},{"title":"TestGeometricObject3.java <span style='color:#111;'> 6.84KB </span>","children":null,"spread":false},{"title":"TestGeometricObject2.java <span style='color:#111;'> 2.57KB </span>","children":null,"spread":false},{"title":"Circle.java <span style='color:#111;'> 1.53KB </span>","children":null,"spread":false},{"title":"GeometricObject.java <span style='color:#111;'> 271B </span>","children":null,"spread":false}],"spread":true},{"title":".settings","children":[{"title":"org.eclipse.jdt.ui.prefs <span style='color:#111;'> 5.11KB </span>","children":null,"spread":false},{"title":"org.eclipse.jdt.core.prefs <span style='color:#111;'> 629B </span>","children":null,"spread":false}],"spread":true},{"title":"GeometricObject.dat <span style='color:#111;'> 3.29KB </span>","children":null,"spread":false},{"title":".classpath <span style='color:#111;'> 301B </span>","children":null,"spread":false},{"title":"bin","children":[{"title":"Triangle.class <span style='color:#111;'> 2.29KB </span>","children":null,"spread":false},{"title":"TestGeometricObject1.class <span style='color:#111;'> 1.64KB </span>","children":null,"spread":false},{"title":"TestGeometricObject2.class <span style='color:#111;'> 2.70KB </span>","children":null,"spread":false},{"title":"TestGeometricObject3$9.class <span style='color:#111;'> 854B </span>","children":null,"spread":false},{"title":"TestGeometricObject3$2.class <span style='color:#111;'> 1.29KB </span>","children":null,"spread":false},{"title":"TestGeometricObject3.class <span style='color:#111;'> 4.59KB </span>","children":null,"spread":false},{"title":"TestGeometricObject3$1.class <span style='color:#111;'> 1.64KB </span>","children":null,"spread":false},{"title":"TestGeometricObject3$4.class <span style='color:#111;'> 875B </span>","children":null,"spread":false},{"title":"TestGeometricObject3$8.class <span style='color:#111;'> 876B </span>","children":null,"spread":false},{"title":"TestGeometricObject3$3.class <span style='color:#111;'> 747B </span>","children":null,"spread":false},{"title":"GeometricObject.class <span style='color:#111;'> 195B </span>","children":null,"spread":false},{"title":"TestGeometricObject3$7.class <span style='color:#111;'> 873B </span>","children":null,"spread":false},{"title":"Circle.class <span style='color:#111;'> 1.70KB </span>","children":null,"spread":false},{"title":"TestGeometricObject3$5.class <span style='color:#111;'> 874B </span>","children":null,"spread":false},{"title":"TestGeometricObject3$DrawGraph.class <span style='color:#111;'> 1.49KB </span>","children":null,"spread":false},{"title":"Rectangle.class <span style='color:#111;'> 1.38KB </span>","children":null,"spread":false},{"title":"TestGeometricObject3$6.class <span style='color:#111;'> 875B </span>","children":null,"spread":false}],"spread":false}],"spread":true}],"spread":true}]

评论信息

  • 哇!流弊!!! :
    一般,没有按要求来
    2019-06-21
  • 大数据机器学习实验室 :
    没用好吗?根本没有按照要求来
    2017-08-14
  • cqlgqh :
    感觉上还是有用的,可以借鉴
    2015-06-16
  • 伪音 :
    非常有用,不过并没完全按照题目要求,如果能完全符合就更好啦
    2014-03-24
  • 于有道 :
    不错适合初学者看看
    2014-01-14

免责申明

【只为小站】的资源来自网友分享,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,【只为小站】 无法对用户传输的作品、信息、内容的权属或合法性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论 【只为小站】 经营者是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。
本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二条之规定,若资源存在侵权或相关问题请联系本站客服人员,zhiweidada#qq.com,请把#换成@,本站将给予最大的支持与配合,做到及时反馈和处理。关于更多版权及免责申明参见 版权及免责申明