已阅读5页,还剩9页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
西 安 邮 电 大 学(计算机学院)面向对象程序设计JAVA课内实验报告实验名称:继承与多态(一)专业名称:软件工程班 级: 软件1501学生姓名:冀潘婷学号(8位):04153026指导教师:张德慧实验时间:2016.10.21一. 实验目的及实验环境 1理解子类、父类的概念,掌握子类继承父类的方法。 2理解成员变量的隐藏和方法重写。 3会使用super关键字操作被隐藏的成员变量和方法。 4了解final类和final方法的作用。 5理解protected修饰符的作用和用法。二. 实验内容 1 基本内容(实验前请及时熟悉如下相关内容)1)类的继承:定义子类2)使用super关键字调用父类方法3)方法覆盖overriding:覆盖Object类的toString( )方法4)练习使用ArrayList类的方法5)练习覆盖Object类的equals( )方法 2 综合实验:2.1 (Y. Daniel Liang英文版八版P403:11.1) (The Triangle class) Design a class named Triangle that extends GeometricObject. The class contains: Three double data fields named side1, side2, and side3 with default values 1.0 to denote three sides of the triangle. A no-arg constructor that creates a default triangle. A constructor that creates a triangle with the specified side1, side2, and side3. The accessor methods for all three data fields. A method named getArea() that returns the area of this triangle. A method named getPerimeter() that returns the perimeter of this triangle. A method named toString() that returns a string description for the triangle.For the formula to compute the area of a triangle, see Exercise 2.21. The toString() method is implemented as follows:return Triangle: side1 = + side1 + side2 = + side2 + side3 = + side3;Draw the UML diagram for the classes Triangle and GeometricObject.Implement the class. Write a test program that creates a Triangle object with sides 1, 1.5, 1, color yellow and filled true, and displays the area, perimeter, color, and whether filled or not. (不要求画出UML图)2.2 (Y. Daniel Liang英文版八版P403:11.2) (The Person, Student, Employee, Faculty, and Staff classes) Design a class named Person and its two subclasses named Student and Employee.Make Faculty and Staff subclasses of Employee. A person has a name, address, phone number, and email address. A student has a class status (freshman, sophomore, junior, or senior). Define the status as a constant. An employee has an office, salary, and date hired. Define a class named MyDate that contains the fields year, month, and day. A faculty member has office hours and a rank. A staff member has a title. Override the toString method in each class to display the class name and the persons name.Draw the UML diagram for the classes. Implement the classes. Write a test programthat creates a Person, Student, Employee, Faculty, and Staff, and invokes their toString() methods. (不要求画出UML图)2.3 (Y. Daniel Liang英文版八版P404:11.5) (The Course class) Rewrite the Course class in Listing 10.6. Use an ArrayList to replace an array to store students. You should not change the original contract of the Course class (i.e., the definition of the constructors and methods should not be changed).3 测试数据及运行结果4 源代码5 (1).package eightWeek;public class dfg public static void main(String args) / TODO Auto-generated method stub Triangle triangle = new Triangle(1,1.5,1,yellow,true); System.out.println(The triangle of Area:+triangle.getArea(); System.out.println(The triangle of perimeter:+triangle.getPerimeter(); System.out.println(color:+triangle.getColor(); System.out.println(color is filled or not?+triangle.isFilled(); class Triangle extends GeometricObject double side1=1.0; double side2=1.0; double side3=1.0; public Triangle(double side1,double side2,double side3) this.side1=side1; this.side2=side2; this.side3=side3; public double Getside1() return side1; public double Getside2() return side2; public double Getside3() return side3; public double getPerimeter() return this.side1 + this.side2 + this.side3; public double getArea() double p = this.getPerimeter() / 2; double ss = p * (p - this.side1) * (p - this.side2) * (p - this.side3); double s = Math.sqrt(ss); return s; public Triangle(double side1, double side2,double side3,String color, boolean filled) this.side1=side1; this.side2=side2; this.side3=side3; this.color=color; super.setFilled(filled); public String getString() return Triangle: + this.side1 + , + this.side2 + , + this.side3; class GeometricObjectpublic String color=white;public boolean filled;public java.util.Date dateCreated;GeometricObject() public GeometricObject(String color,boolean filled)dateCreated = new java.util.Date();this.color=color;this.filled=filled;public String getColor()return color;public void setColor(String color)this.color=color;public boolean isFilled()return filled;public void setFilled(boolean filled)this.filled=filled;public String toString()return color+color+and filled:+filled; (2).package eightWeek;public class dfh public static void main(String args) / TODO Auto-generated method stub person man = new person(); Student student = new Student(); Employee ploy = new Employee(); Faculty faculty = new Faculty(); Staff staff = new Staff(); man.setname(li); student.setname(hu); ploy.setname(ji); faculty.setname(shi); staff.setname(wan); System.out.println(man.toString(); System.out.println(student.toString(); System.out.println(ploy.toString(); System.out.println(faculty.toString(); System.out.println(staff.toString();class personpublic String name;public String address;public int num;public String emialaddress;person()public person(String name, String address, int num, String emialaddress)=name;this.address=address;this.num=num;this.emialaddress=emialaddress;public void setname(String name)=name; public String getname()return ;public String toString()return person:+;class Student extends personpublic void setGrade() final String s1=freshman; final String s2=sophomore; final String s3=junior; final String s4=ssenior;Student()public Student(String name, String address, int num, String emialaddress,String grade)=name;this.address=address;this.num=num;this.emialaddress=emialaddress;public String toString()return student:+;class Employee extends personint officenum;int salary;myDate date;Employee()public String toString()return Employee:+;class Faculty extends EmployeeString officehours;String rank;public String toString()return faculty:+;class Staff extends EmployeeString title;public String toString()return Staff:+;class myDate int year;int month;int day;myDate(int year, int m
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 公司粗纱工设备技术规程
- 公司拖拉机整机装试工岗位职业健康、安全、环保技术规程
- 石英玻璃制品加工工岗前岗位实操考核试卷含答案
- 开清棉工操作知识水平考核试卷含答案
- 2025-2026学年北师大版(2022)小学劳动技术一年级(上册)期末测试卷附答案
- 互联网访问速度优化方案
- 沪科版九年级数学上册 单元整合训练 反比例函数与几何图形的综合(含解析)
- 专题01 一元二次方程【知识梳理+解题方法+专题过关】-2025-2026学年九年级数学上学期期中期末挑战满分冲刺卷(人教版)(解析版)
- 【名校】北京市师范大学第二附属中学2024-2025学年八年级上学期12月月考数学试题
- 2025-2031全球与中国高压化成箔市场现状及未来发展趋势 Sample ZXL
- 《分布式光伏发电开发建设管理办法》问答(2025年版)
- 2026年鄂尔多斯生态环境职业学院单招综合素质考试题库附答案
- 第13章 项目计划管理
- 2025至2030中国煤化工行业发展趋势分析与未来投资战略咨询研究报告
- 可燃有毒气体报警器培训试题(有答案)
- 2026年东营科技职业学院单招综合素质考试题库及答案1套
- 广东5年(2021-2025)高考生物真题分类汇编:专题04 遗传的基本规律(原卷版)
- 2025年部编新版道德与法治二年级上册期末复习计划
- 2025-2030律师事务所行业战略联盟与协同发展研究报告
- 《回弹法检测混凝土抗压强度技术规程》
- 抖音公会运营知识培训课件
评论
0/150
提交评论