面向对象技术Java-期末复习试题(二).docx
《面向对象技术Java-期末复习试题(二).docx》由会员分享,可在线阅读,更多相关《面向对象技术Java-期末复习试题(二).docx(8页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精品文档,仅供学习与交流,如有侵权请联系网站删除期末复习试题(二)一、 程序题1、编写程序创建Point类,要求如下:(1)double类型的数据域x和y分别表示点的坐标;(2)x、y的get和set方法;(3)一个无参构造方法;(4)一个创建点对象同时指定x和y坐标的有参的构造方法;(5)一个名为distance(Point p)的方法,返回从该点到指定点之间的距离;(6)一个名为distance(double x, double y)的方法,返回从该点到指定x和y坐标的指定点之间的距离。解题要求:编写测试类,分别调用两个distance方法,计算:(1)点(2,3)到(10,30)之间的距
2、离并显示;(2)点(4,5)到(20,50)之间的距离并显示。public class TestPoint public static void main(String a)System.out.println(前两点间的距离是 + new Point(2,3).distance(new Point(10,30);System.out.println(后两点间的距离是 + new Point(4,5).distance(20,50);class Pointprivate double x,y;public Point()public Point(double x, double y)this.
3、x = x;this.y = y;public double getX() return x;public void setX(double x) this.x = x;public double getY() return y;public void setY(double y) this.y = y;public double distance(Point p)return Math.sqrt(x计算通过参数传递进来的p点与当前点的距离-p.getX()*(x-p.getX() + (y-p.getY()*(y-p.getY();public double distance(double
4、x, double y)return Math.sqrt(x-this.x)*(x-this.x) + (y-this.y)*(y-this.y);2、下图是课程类Course的UML类图,说明如下:(1)成员变量包括课程名称(courseName)和选课学生(students),选课学生存放在ArrayList链表中。(2)包括成员变量的set和get方法。(3)一个输出课程信息的方法toString(),可以输出课程名称、选课学生名单和选课人数。(4)一个添加学生的方法addStudent(String student)。(5)一个查询选课学生数量的方法getNumberOfStduent
5、s()解题要求:编写测试类,创建课程对象,添加3个选课学生,按照如下提示输出课程信息。import java.util.ArrayList;public class TestCourse public static void main(String arg)Course c = new Course(面向对象技术);c.addStudents(张三);c.addStudents(李四);c.addStudents(王五);System.out.println(c.toString(); class Courseprivate String courseName;private ArrayLis
6、t students = new ArrayList();public Course(String courseName)this.courseName = courseName;public void addStudents(String student)students.add(student);public ArrayList getStudents()return students;public int getNumberOfStudents()return students.size();public String getCourseName()return courseName;p
7、ublic void dropStudent(String student)students.remove(student);public String toString()String s = ;局部变量在使用前需要初始化for(int i = 0; i students.size(); i+)s += + students.get(i);return 课程名称 + courseName + n + 选课人数 + getNumberOfStudents() + n + 学生名单 + s;3、下图描述了两个类:Line(线段)和Point(点),以及两个类之间的关联关系,一条线段对象由对应的两
8、个点对象组成。解题要求:要求如下:(1) 编写Line(线段)和Point(点)两个类的代码,注意满足封装的需求。将数据隐藏,通过方法访问数据。(2) 使用Line类的Line(x1: int, y1: int, x2: int, y2: int)方法,创建Line对象,端点是(10,20)、(30,40),计算并输出线段的长度。(3)使用Line类的Line(p1: Point,p2: Point)方法,创建Line对象,端点是(3,4)、(9,,10),计算并输出线段的长度。public class UseLine public static void main(String arg) L
9、ine lFirst = new Line(10,20,30,40); System.out.println(线段的长度为 + lFirst.getLength(); Line lSecond = new Line(new Point(3,4),new Point(9,10); System.out.println(线段的长度为 + lSecond.getLength(); class Pointprivate int x; private int y; public Point(int x, int y)this.x = x;this.y = y;public int getX() retu
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 面向 对象 技术 Java 期末 复习 试题
限制150内