全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
应用数学 学院 信息与计算科学 专业 学号 姓名 教师评定_实验题目 继承与接口 一、 实验目的与要求实验目的:1、掌握类的继承关系。2、掌握接口的定义与使用。实验要求: 按下列要求编写Java程序:1、定义接口Printx,其中包括一个方法printMyWay(),这个方法没有形参,返回值为空。2、编写矩形类,矩形类要求实现Printx接口,有求面积、求周长的方法,printMyWay()方法要能显示矩形的边长、面积和周长。 3、编写正方形类作为矩形类的子类,正方形类继承了矩形类求面积和周长的方法,新增加求对角线长的方法,重写printMyWay()方法,要求该方法能显示正方形的边长、面积、周长和对角线长。二、 实验方案编辑该实验源程序如下:package printxdemo;/定义接口Printxinterface Printx public void printMyWay();/定义矩形类Rectangle实现Printx接口class Rectangle implements Printx protected double length; protected double width; public Rectangle(double length,double width) this.length=length; this.width=width; public String getTangle() return 该矩形:tn+长为:+this.length+;宽为:+this.width; public String getArea() return 面积为:+(this.length*this.width); public String getGirth() return 周长为:+2*(this.length+this.width); public void printMyWay() System.out.println(this.getTangle(); System.out.println(this.getArea(); System.out.println(this.getGirth(); /定义正方形类Square继承长方形类Rectangleclass Square extends Rectangle public double side; public Square(double side) super(side,side); public String getTangle() return 该正方形:tn+边长为:+this.length; public String getDiag() return 对角线长为:+Math.sqrt(2.0*this.length*this.length); public void printMyWay() super.printMyWay(); System.out.println(this.getDiag(); public class PrintxDemo public static void main(String args) Rectangle rec=new Rectangle(5.0,4.0); rec.printMyWay(); Square squ=new Square(6.0); squ.printMyWay(); 编译、调试得出结果。三、 实验结果和数据处运行上述程序:可得如下运行结果:该矩形:长为:5.0;宽为:4.0面积为:20.0周长为:18.0该正方形:边长为:6.0面积为:36.0周长为:24.0对角线长为:8.48528137423857四、 结论因为接口中只能定义常量和空方法,而且接口允许多继承,所以运用接口编辑程序,可以提高程序的灵活度。而继承虽然没有接口灵活,但是可以让代码被很好地复用,降低了类的冗余度,有效地提高了资源的利用率。比如程序中,子类Square继承了父类Rectangle的一些方法,省去了对getArea()和getGirth ()的再次声明定义。五、 问题与讨论什么时候该接口,什么时候该用继承?分析:使用接口实现而不用类继承的主要原因有:在应用程序要求很多可能不相关的对象类型以提供某种功能的情况下,用接口适用性会更强;接口比基类更灵活,因为可以定义单个实现来实现多个接口;在无需从基类继承实现的情况下,接口更好;在无法使用类继承的情况下接口是很有用的。使用类继承而不用接口实现的主要原因有:抽象类提供简单易行的方法来控制组件版本。通过更新
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 营养膳食配餐与特殊饮食护理
- 工程施工图纸审核与管理方案
- 排水工程项目安全管理保障方案
- 护理质控标准及内容培训
- 风电场能效评估与优化方案
- 脑梗塞护理案例推演
- 新生儿睡眠训练:从哭闹到安稳入睡技巧
- 临床生物化学检测方法的选择与评价
- 新课程音乐教学论
- 急性白血病护理中的感染防控与手卫生规范
- 山东省青岛市市南区2023-2024学年八上期末数学试题(原卷版)
- 灌溉渠工程项目可行性研究报告
- 2025劳动合同书(上海市人力资源和社会保障局监制)
- 专利布局培训课件
- 仪表实操题库-《化工仪表维修工》(初级工)实际操作考核试卷
- 内镜中心PDCA课件
- 第15课 红红火火中国年(教学课件)小学二年级上册 统编版《道德与法治》新教材
- servsafe考试题及答案
- 2025年政府会计准则制度实施能力考试考点清单解析集
- 激光雷达技术原理第一章
- 幼儿园膳食委员会监督机制
评论
0/150
提交评论