



全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
JAVA程序设计课程实验报告专 业: 网络工程 班 级: 1320552 学 号: 132055222 姓 名: 聂浩杰 日期: 2016 年 4 月 26 日一、 实验题目1. 类的继承与封装:定义抽象类Shape(形状)其中有抽象方法用来求某形状的周长和面积;定义Shape类的子类Circle(圆形)、Triangle(三角形)、Rect(矩形)其中包括该形状的位置、大小信息并实现求其周长和面积的方法。假设当前有圆心为(100,100)半径为60的圆,左上角坐标为(0,200),水平宽度为120,垂直高度为80的矩形,以及三个顶点坐标分别为(200,200)、(300,400)、(150,350)的三角形,请在控制台输出每个形状的相关信息,及所有形状的周长和面积的和。2.接口的定义与实现:通过接口和实现接口的类来完成上一题目。二、 实验目的1. 熟练掌握类、类的数据成员和成员方法的定义与实现;2. 熟练掌握抽象类与类的继承的相关内容;3. 熟练掌握接口与接口的实现的相关内容;4. 熟练掌握public、private、static、final、abstract等修饰符的作用。三、 实验内容1. 复习有关Java中类、类的继承、接口、接口的实现的相关内容;2. 根据题目要求编写需要的抽象类和其子类;3. 根据题目要求编写相应的main方法完成程序;4. 根据题目要求编写需要的接口和实现该接口的类;5. 根据题目要求编写相应的main方法完成程序;6. 调试代码,完善程序。四、 实验步骤1、 题目一(1) 问题分析 首先应该建一个父类定义抽象类Shape,其中有抽象方法用来求某形状的周长和面积,然后定义Shape类的子类Circle(圆形)、Triangle(三角形)、Rect(矩形)其中包括该形状的位置、大小信息并实现求其周长和面积的方法。最后写一个测试类在里面建对象,调用各个子类方法,输出信息。 (2) 算法描述父类Shape 抽象类方法area(),Perimeter()。子类Circle(圆形)、Triangle(三角形)、Rect(矩形)里面具体写area(),Perimeter()方法测试类c5建立对象,调用子类里面的area(),Perimeter()方法用输出语句输出信息(3) 主要代码及运行结果抽象类Shapepackage test2;import java.awt.Graphics;public abstract class Shape public int x,y;public int w, g;public Shape(int x, int y, int w, int g) super();this.x = x;this.y = y;this.w = w;this.g = g;public abstract double area();public abstract double zc();Square类public class Square extends Shape public Square(int x, int y, int w, int g) super(x, y, w, g);/ TODO 自动生成的构造函数存根public double area() / TODO 自动生成的方法存根return w*g;public double zc() / TODO 自动生成的方法存根return 2*(w+g);Ciecle类public class Circle extends Shape public double R;public Circle(int x, int y, int w, int g) super(x, y, w, g);/ TODO 自动生成的构造函数存根R=(double)w/2.0;public double area() / TODO 自动生成的方法存根return R*R*3.14;public double zc() / TODO 自动生成的方法存根return 2*R*3.14 ;Triangle类public class Triangle extends Shape public double c;public Triangle(int x, int y, int w, int g) super(x, y, w, g);/ TODO 自动生成的构造函数存根c=Math.sqrt(w*w+g*g);public double area() / TODO 自动生成的方法存根return 0.5*w*g;public double zc() / TODO 自动生成的方法存根return w+g+c;测试类import java.applet.Applet;import java.awt.Graphics;public class c5 extends Applet Square Box=new Square(30,230,120,80);Triangle tri=new Triangle(5,50,8,4);Circle Oval=new Circle(5,90,120,120);public void paint(Graphics g) g.drawRect(Box.x,Box.y,Box.w,Box.g); g.drawString(Box Area:+Box.area(),40,330); g.drawString(Box Perimeter:+Box.zc(),40,350); g.drawLine(200, 200, 300, 400); g.drawLine(200, 200, 150, 350); g.drawLine(300, 400, 150, 350); g.drawString(tri Area:+tri.area(),80,400); g.drawString(tri Perimeter:+tri.zc(),80,430); g.drawString(Oval Area:+Oval.area(),20,60); g.drawString(Oval Perimeter:+Oval.zc(),20,70); g.drawOval(Oval.x,Oval.y,Oval.w,Oval.g); (4) 出现问题及解决方法在建子类时忘了写父类抽象方法的具体实现类,导致出现错误。解决方法:只要在子类中该出父类中抽象类方法的实现方法,就可以在测试类中调用实现功能。 2、 题目二(1) 问题分析和上一个问题差不多,只是子类的功能要用接口来实现。 (2) 算法描述接口Shape 抽象类方法area(),Perimeter()。类Circle(圆形)、Triangle(三角形)、Rect(矩形)里面具体实现接口area(),Perimeter()方法测试类c5建立对象,调用子类里面的area(),Perimeter()方法用输出语句输出信息(3) 主要代码及运行结果import java.applet.Applet;import java.awt.Graphics;interface Shapes /定义一个接口 abstract double Area(); /自动被定义为public abstract double tPerimeter(); /自动被定义为public abstract 其他Circle(圆形)、Triangle(三角形)、Rect(矩形)只要在类中定义局部变量和方法(和上一个一样),就可以了。测试类public class C5_18 extends Applet Square Box=new Square(5,15,25,25); Triangle tri=new Triangle(5,50,8,4); Circle Oval=new Circle(5,90,25,25);public void paint(Graphics g) g.drawRect(Box.x,Box.y,Box.width,Box.height); g.drawString(“Box Area:”+Box.getArea(),50,35); g.drawString(“Box Perimeter:”+Box.getPerimeter(),50,55); g.drawString(“tri Area:”+tri.getArea(),50,75); g.drawString(“tri Perimeter:”+tri.getPerimeter(),50,95); g.drawOval(Oval.x,Oval.y,Oval.width,Oval.height); g.drawString(“oval Area:”+Oval.getArea(),50,115); (
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 漫画版新质生产力
- 民族歌剧《沂蒙山》课件
- 科学企业家:新质生产力的引领者
- 2025年眼科常见眼病诊断与治疗知识考核答案及解析
- 2025年护理学实际操作技能考核模拟试卷答案及解析
- 2025年整形外科手术器械识别模拟考试卷答案及解析
- 2025年生理学生理生化参数测定试卷答案及解析
- 华池县创建省级园林城市实施方案
- 2025年中医儿科疾病辨治与药膳养生模拟考试卷答案及解析
- 2025年中医推拿治疗技术应用考查答案及解析
- 2025江西吉安庐陵新区招聘社区工作者(专职网格员)招聘22人考试参考试题及答案解析
- 2025-2026学年广美版(2024)小学美术二年级上册教学计划及进度表
- 2025年手电筒行业研究报告及未来行业发展趋势预测
- 设备使用与保养培训课件
- 酒店客户服务质量提升培训课件
- GB/T 9258.2-2025涂附磨具用磨料粒度组成的检测和标记第2部分:粗磨粒P12~P220
- 2025山西太原西山生态文旅投资建设有限公司及子公司招聘13人笔试参考题库附带答案详解
- 2025 年小升初吕梁市初一新生分班考试语文试卷(带答案解析)-(部编版)
- 2025秋全体教师大会上,德育副校长讲话:德为根,安为本,心为灯,家为桥-这场开学讲话,句句都是育人的方向
- 2025年政工师考试试题及参考答案
- (2025年标准)个人转款协议书
评论
0/150
提交评论