电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

28-汪宜飞-实验四

12页
  • 卖家[上传人]:第***
  • 文档编号:34215584
  • 上传时间:2018-02-22
  • 文档格式:DOC
  • 文档大小:91.54KB
  • / 12 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、 面向对象程序设计实验报告合 肥 院学院计算机科学与技术系实验名称 _java 继承与多态_日期_2014.10.22姓名/学号 汪宜飞_/_1304091028_ 专业/班级 _软件工程_/_1 班_指导老师_ _吴 晓 晴 _成 绩_1、实验目的:(详见指导书,宋体小四)掌握继承、多态的概念与实现方法;掌握包和接口的定义和使用方法;掌握 JAVA 语言实现多继承的途径;二 、 实 验 要 求 : (详见指导书,宋体小四)1. 能实现类的继承关系;2. 用多种方法创建各个类的对象;3. 程序应包括各个被调用方法的执行结果的显示。4. 写出实验报告。要求记录编译和执行 Java 程序当中的系统错误信息提示,并给出解决办法。(附运行界面、源代码)。3、实 验 内 容 及 过 程 : ( 宋体小四,)1分别编写两个类 Point2D,Point3D 来表示二维空间和三维空间的点,使之满足下列要求:(1) Point2D 有两个整型成员变量 x, y (分别为二维空间的 X,Y 方向坐标),Point2D 的构造方法要实现对其成员变量 x, y 的初始化。(2)Point2D 有一个 voi

      2、d 型成员方法 offset(int a, int b),它可以实现Point2D 的平移。(3)Point3D 是 Point2D 的直接子类,它有有三个整型成员变量 x,y,z (分别为三维空间的 X,Y,Z 方向坐标),Point3D 有两个构造方法:Point3D(int x,int y,int z)和 Point3D(Point2D p,int z),两者均可实现对 Point3D 的成员变量 x, y,z 的初始化。(4)Point3D 有一个 void 型成员方法 offset(int a, int b,int c),该方法可以实现 Point3D 的平移。(5)在 Point3D 中的主函数 main()中实例化两个 Point2D 的对象p2d1,p2d2,打印出它们之间的距离,再实例化两个 Point2D 的对象p3d1,p3d2,打印出他们之间的距离。2定义抽象类 Shape,抽象方法为 showArea(),求出面积并显示,定义矩形类 Rectangle,正方形类 Square,圆类 Circle,根据各自的属性,用showArea 方法求出各自的面积,在 ma

      3、in 方法中构造 3 个对象,调用showArea 方法。定义接口 DiagArea,其中包含方法 double getDiagonal()求对角线长, double getArea()求面积,定义一个矩形类,实现此接口,并自行扩充成员变量和方法,定义一个正方形类继承矩形类(如矩形有长 w 和宽 h,正方形有边 x,并有相应的构造函数,有一个方法中一次直接显示边长、面积和对角线长),在另一类中的主方法里使用测试该类。1、定义一个描述人的基本类,该类包括人的性别和出生日期两个数据成员,以及设置和获取这些属性值的方法成员;再定义一个大学生类,使大学生类具有人的所有属性外,还具有姓名、学号,大学入学成绩,籍贯属性以及设置和获取这些属性值的方法成员;编写完整的程序,完成一个具有班级学生信息管理功能的程序。在这个程序中,先定义父类 people,在其中输入成员变量性别和出生日期,并通过方法 set 和 get 来输入、返回成员值,定义方法 String 来输出成员的信息;在定义子类 student 继承父类,输入姓名、学号,大学入学成绩,籍贯属性数据成员,并通过方法 set 和 get 来输入、

      4、返回成员值,定义方法 String 来输出学生的信息;在主函数中,实例化学生类并赋值,调用 String 方法输出学生信息。4、实 验 中 的 问 题 思 考 及 讨 论 : (列出你实验中出现的问题,及解决的问题和解决的思路)在第一个程序中,在类 Point2D 中定义了方法 public Point2D(int x,int y)输入条件 this.x=x;this.y=y;,而在类 Point3D 中定义 public Point3D(Point2D p,int z)没有输入条件 this.x =p.x;this.y =p.y;导致最后输出的值为 0,通过比较添加了条件程序正确运行了。五 、 实 验 总 结 : (简单、准确的总结本次实验的主要内容,个人收获)只要不断的上机实验,不断的发现自己的错误,才能正真的掌握 Java 这一门程序语言。加深了解了继承的概念,通过子类通过继承父类的属性并添加自身的属性使子类更加完善,也贴合实际有助于解决现实中的问题。6、源 代 码 及 运 行 结 果 class shiyan public static void main(String arg

      5、s) Point2D p1=new Point2D(2,3);Point2D p2=new Point2D(0,0);p2=p1.offset(p1.x, p1.y);System.out.println(平移后的坐标为:+p2.x+ +p2.y);p2.dis(p1,p2);Point3D p3=new Point3D(2,3,4);Point3D p4=new Point3D(0,0,0);p4=p3.offset(p3.x,p3.y,p3.z);System.out.println(平移后的坐标为:+p4.x+ +p4.y+ +p4.z);p3.dis(p3,p4);class Point2Dint x,y;Point2D()public Point2D(int x,int y)this.x=x;this.y=y;public int getX()return x;public int getY()return y;public Point2D offset(int x,int y)Point2D p2=new Point2D(1,1);p2.x=p2.x+x;p2.y=p2.y

      6、+y;return p2;public void dis(Point2D p1,Point2D p2)double x;p1.x=(p1.x-p2.x)*(p1.x-p2.x);p1.y=(p1.y-p2.y)*(p1.y-p2.y);x=Math.sqrt(p1.x+p1.y);System.out.println(坐标 p1、p2 之间的距离:+x);class Point3D extends Point2Dint z;Point3D(int x,int y,int z) this.x = x;this.y = y;this.z = z;public Point3D(Point2D p,int z)this.x =p.x;this.y =p.y;this.z=z;public int getZ()return z;public Point3D offset(int x,int y,int z)Point3D p4=new Point3D(1,1,1);p4.x=p4.x+x;p4.y=p4.y+y;p4.z=p4.z+z;return p4;public void dis(Poin

      7、t3D p3,Point3D p4)double x;p3.x=(p3.x-p4.x)*(p3.x-p4.x);p3.y=(p3.y-p4.y)*(p3.y-p4.y);p3.z=(p3.z-p4.z)*(p3.z-p4.z);x=Math.sqrt(p3.x+p3.y+p3.z);System.out.println(坐标 p3、p4 之间的距离:+x); class Shape public static void main(String args) Rectangle a=new Rectangle(3,4);a.showArea();Square b=new Square(3);b.showArea();b.show();Circle c=new Circle();c.showArea();abstract class Shape1abstract void showArea();interface DiagAreadouble getDiagonal();double getArea();class Rectangle implements DiagAreadouble a,

      8、b;double c;double d;Rectangle(double a,double b)this.a=a;this.b=b;public double getDiagonal()c=Math.sqrt(a*a)+(b*b);return c;public double getArea()d=a*b;return d;void showArea()System.out.println(矩形长、宽:+a+ +b);System.out.println(矩形对角线:+getDiagonal();System.out.println(矩形面积:+getArea();class Square extends Rectangleint a=3;double c;double d;Square(int a)super(a,a);this.a=a;void showArea()System.out.println(正方形面积:+(a*a);public double getDiagonal()c=Math.sqrt(a*a)+(a*a);return c;public double getAr

      9、ea()d=a*a;return d;void show()System.out.println(正方形边长:+a);System.out.println(正方形对角线:+getDiagonal();System.out.println(正方形面积:+getArea();class Circle int a=3;double PI=3.14;void showArea()System.out.println(圆面积:+(a*a*PI);class persion public static void main(String args) student a=new student();a.setbir(1993/1/10);a.setgrade(69);a.setlocal(合肥);a.setname(wang);a.setsex(男);a.setnumber(1304091028);a.String();class peoplepublic String sex;public String bir;public void setsex(String sex)this.sex=sex;public void setbir(String bir)this.bir=bir;public String getsex()return sex;public String getbir()return bir;void String()System.out.println(性别:+sex+t 出生日期+bir);class student extends peoplepublic String name;public String

      《28-汪宜飞-实验四》由会员第***分享,可在线阅读,更多相关《28-汪宜飞-实验四》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2 2022年小学体育教师学期工作总结 2022年家长会心得体会集合15篇
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.