




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、期末复习试卷(五)一、 程序题1、请根据UML图,代码实现Person类、Student类和Volunteer接口的定义。解题要求:编写测试程序,创建一个名为”Tom”的一年级学生,这名学生参加了“北京青年志愿者协会”的活动。输出该学生的姓名、年级及所属社团的信息。效果如下:interface Volunteer public abstract String volunteer(String organization);class Person private String name; public Person()
2、 public Person(String name) = name; Override public String toString() return "姓名" + + "n" class Student extends Person implements Volu
3、nteer private int grade; public static final int FRESHMAN = 1; public static final int SOPHOMORE = 2; public static final int JUNIOR = 3; public static final int SENIOR = 4; public Student(String name, int grade)
4、60; super(name); this.grade = grade; Override public String toString() return super.toString() + "年级" + this.grade + "n&quo
5、t; Override public String volunteer(String organization) return organization; public class Test public static void main(String args) Student student = new Student("Tom",1);
6、0; System.out.println(student + "所属社团" + student.volunteer("北京青年志愿者协会") + "n"); 2、根据给定的GeometricObject类层次图,分别实现GeometricObject、Circle和Triangle类。要求:(1) 按照类图,定义各类的数据域属性和方法。(2) 默认的GeometricObject的颜色为white。默认的Circle对象的半径为1
7、0。默认的Triangle对象的三边为(3,4,5)。(3) GeometricObject类的toString()方法,返回对象的颜色信息。Circle和Triangle的toString()方法,覆盖父类的toString(),分别返回包括颜色信息、半径或边长的信息。(4) GeometricObject类实现java.lang.Comparable接口,覆盖public int compareTo()方法,实现两个几何对象在周长上的比较。(5) Circle和Triangle类分别覆盖实现getPerimeter()。编写一个用户程序:(1)创建一个几何对象数组object;(2)分别存
8、放一个默认的圆、一个半径为20的圆、一个默认的三角形和一个三边为(10,20,15)的三角形;(3)计算这一组几何对象的总周长并输出;(4)使用toString(),输出每个几何对象的相关信息;(5)使用java.util.Arrays.sort()方法,对几何对象数组中的几何图形,按周长进行排序,并输出排序结果。解题要求:写出程序代码。定义一个Java源文件,名为Test.java,其中包括:用户类Test、GeometricObject类、Circle类和Triangle类的定义。abstract class GeometricObject implements Comparable<
9、;geometricobject> private String color = "white" protected GeometricObject() protected GeometricObject(String color) this.color = color; public String getColor() return color; public void setColor(String color) this.color = color; Override public int compareTo(GeometricObject o) if (thi
10、s.getPerimeter() > o.getPerimeter() return 1; else if (this.getPerimeter() < o.getPerimeter() return -1; else return 0; public String toString() return "颜色" + color + "n" public abstract double getPerimeter();class Circle extends GeometricObject private double radius; publi
11、c Circle() this.radius = 10.0; public Circle(double radius) this.radius = radius; public Circle(String color, double radius) super(color); this.radius = radius; public double getRadius() return radius; public void setRadius(double radius) this.radius = radius; Override public double getPerimeter() r
12、eturn 2 * radius * Math.PI; public String toString() return super.toString() + "圆的半径是" + radius + "n" class Triangle extends GeometricObject private double side1; private double side2; private double side3; public Triangle() this.side1 = 3.0; this.side2 = 4.0; this.side3 = 5.0; p
13、ublic Triangle(double side1 ,double side2, double side3) this.side1 = side1; this.side2 = side2; this.side3 = side3; public Triangle(String color,double side1 ,double side2, double side3) super(color); this.side1 = side1; this.side2 = side2; this.side3 = side3; Override public double getPerimeter()
14、return side1 + side2 + side3; Override public String toString() return super.toString() + "三角形的三条边是" + side1 + " " + side2 + " " + side3 + "n" public class Test public static void main(String args) /创建对象数组 GeometricObject object = new Circle(), new Circle(20),
15、 new Triangle(), new Triangle(10,20,15); double totalPerimeter = 0; /自己学习一下这种for循环的使用方法 for(GeometricObject go:object) totalPerimeter += go.getPerimeter(); System.out.println("The total perimeter is " + totalPerimeter); for(GeometricObject go:object) System.out.println(go.toString(); /*抽象类
16、GeometricObject实现了Comparable接口之后,所有子类(Circle和Triangle)的对象 就可以比较大小了,由此也就可以调用Arrays的sort方法对上面的对象数组排序了。 */ java.util.Arrays.sort(object); for(int i = 0; i < object.length; i+) System.out.println("The " + i + "th short perimeter is " + objecti.getPerimeter(); 3、根据UML图,实现Person类、Fa
17、culty类和Volunteer接口的定义。解题要求:编写用户测试程序,创建一个名为“Jerry”的副教授, 他参加了“北京市慈善义工协会”的活动,输出其姓名、职称和所属社团信息。效果如下:class Person private String name; public Person() public Person(String name) = name; Override public String toString() return "姓名" + + "n" interface Volunteer&
18、#160; public abstract String volunteer(String organization); class Faculty extends Person implements Volunteer private String title; public static final String TEACHING_ASSISTANT = "助教" public static final String LECTURER = "讲师" public static final Str
19、ing ASSOCIATE_PROFESSOR = "副教授" public static final String PROFESSOR = "教授" public Faculty(String name,String title) super(name); this.title = title; Override public String toString() return super.toString() + "职称" + this.title + "n" Override public String vol
20、unteer(String organization) return organization; public class TestPerson public static void main(String args) Faculty faculty = new Faculty("Jerry","副教授"); System.out.println(faculty + "所属社团" + faculty.volunteer("北京市慈善义工协会"); 4、请根据UML图,给出类Person 、类Student、Facu
21、lty类和接口Volunteer的定义实现。解题要求:编写测试程序,创建一个名为“Tom”的一年级学生、“北京青年志愿者协会”成员,创建一个名为“JERRY”的助教、“北京市慈善义工协会”成员,输出两个人的姓名、年级和所属志愿者协会的基本信息。效果如下:interface Volunteer public abstract String volunteer(String organization);class Person private String name; public Person() public Person(String name) =
22、 name; Override public String toString() return "姓名" + + "n" class Student extends Person implements Volunteer private int grade; public static final int FRESHMAN = 1; public static final int SOPHOMORE = 2; public static final int JUNIOR = 3; public static final int SEN
23、IOR = 4; public Student(String name, int grade) super(name); this.grade = grade; Override public String toString() return super.toString() + "年级" + this.grade + "n" Override public String volunteer(String organization) return organization; class Faculty extends Person implements Volunteer private String title; public static final String TEACHING_ASSISTANT = "助教" public static f
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 铁路旅客运输服务出站服务80课件
- 活动演出保证金协议
- 搜救雷达应答器SARTGMDSS综合业务课件
- 铁路班组管理班组安全管理课件
- 特种货物运输车辆运用与管理课件
- 铁路路基与轨道64课件
- 《GB 14891.7-1997辐照冷冻包装畜禽肉类卫生标准》(2025版)深度解析
- 中华文化课件下载
- 大学生职业规划大赛《社会体育指导与管理专业》生涯发展展示
- 中专传统文化课件
- 江苏省2024年中职职教高考文化统考烹饪专业综合理论真题试卷
- 离婚协议书电子版下载
- 第20课《一滴水经过丽江》课件(共40张PPT)-部编版语文八年级下册
- 招商银行入职培训招商银行新员工试题
- 威海职业学院学籍档案簿
- 苏教版二年级数学下册《第2单元 练习二》教学课件PPT小学公开课
- 长期购销合作协议书参考
- 入团志愿书(2016版本)(可编辑打印标准A4) (1)
- 警棍盾牌术基本动作
- 撰写课题申请书的五个关键(课堂PPT)
- 英语作业分层设计案例
评论
0/150
提交评论