面向对象基础_参考答案资料_第1页
面向对象基础_参考答案资料_第2页
面向对象基础_参考答案资料_第3页
面向对象基础_参考答案资料_第4页
面向对象基础_参考答案资料_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、一、【必做题】1(1)定义一个人类Person:1定义一个方法sayHello(,可以向对方发出问候语“hello,my name is XXX”2有三个属性:名字、身高、体重(2)定义一个PersonCreate类:1)创建两个对象,分别是zhangsan,33岁,1.73;lishi,44,1.742)分别调用对象的sayHello(方法。(答案:Person.java、PersonCreate.java)2(1)定义一个人类Person:1定义一个方法sayHello(,可以向对方发出问候语“hello,my name is XXX”2有三个属性:名字、身高、体重3通过构造方法,分别给三

2、个属性赋值(2)定义一个Constructor类:1)创建两个对象,分别是zhangsan,33岁,1.73;lishi,44,1.742)分别调用对象的sayHello(方法。(答案:Constructor.java、或者是Person3.java)3(1)定义一个矩形类Rectangle:1定义三个方法:getArea(求面积、getPer(求周长,showAll(分别在控制台输出长、宽、面积、周长。2有2个属性:长length、宽width3通过构造方法Rectangle(int width, int length,分别给两个属性赋值(答案:Rectangle.java)4 定义一个点类

3、Point,包含2个成员变量x、y分别表示x和y坐标,2个构造器Point(和Point(int x0,y0,以及一个movePoint(int dx,int dy)方法实现点的位置移动。(public class Point private int x0;private int y0;public Point(public Point(int x0,int y0this.x0=x0;this.y0=y0;public void movePoint(int dx,int dythis.x0 = this.x0 + dx;this.y0 = this.y0 + dy; 5 编写一个程序,创建两个

4、Point对象p1、p2,分别调研movePoint方法后,打印p1和p2的坐标。public class Point private int x0;private int y0;public Point(public Point(int x0,int y0this.x0=x0;this.y0=y0;public void movePoint(int dx,int dythis.x0 = this.x0 + dx;this.y0 = this.y0 + dy; 6 (1)定义一个动物类Creature1定义一个方法setSnarl(Cat cat可以设置动物发出猫的声音2setSnarl(Do

5、g dog可以设置动物发出狗的声音3定义一个outPut(方法,可以输出动物的声音(2)要求定义一个猫类Cat,具有猫的声音,将猫类传入动物类Creature的吼叫方法setSnarl(Cat cat可以设置动物发出猫的声音(3)要求定义一个狗类Dog,具有狗的声音,将狗类传入动物类Creature的吼叫方法setSnarlDog dog可以设置动物发出狗的声音(4)定义一个Sound类,在main方法里调用Creature类的setSnarl(和outPut(方法分别设置动物的声音和输出动物的声音效果显示:7定义一个圆类Circle,描述圆对象。圆有一个属性radius表示半径,还有一个fi

6、ndArea方法用于计算圆的面积。定义一个测试类。给半径赋值为5,并且输出圆的面积。8、定义一个笔记本类,该类有颜色(char)和cpu型号(int)两个属性。(1无参和有参的两个构造方法;有参构造方法可以在创建对象的同时为每个属性赋值;(2 输出笔记本信息的方法然后编写一个测试类,测试笔记本类的各个方法。public class ComputeTest public static void main(String args Computer c1 = new Computer(;c1.showComputer(;Computer c2 = new Computer('红',

7、32;c2.showComputer(;class Computer private char color;private int cpuNum;public Computer( public Computer(char color, int cpuNum this.color = color;this.cpuNum = cpuNum;public char getColor( return color;public void setColor(char color this.color = color;public int getCpuNum( return cpuNum;public vo

8、id setCpuNum(int cpuNum this.cpuNum = cpuNum;public void showComputer( System.out.println("笔记本的颜色:" + getColor(;System.out.println("笔记本的CPU型号:" + getCpuNum(;9定义一个汽车类Vehicle,要求如下:(1)属性包括:汽车品牌brand(String类型)、颜色color(String类型)和速度speed(double类型),并且所有属性为私有。(2)至少提供一个有参的构造方法(要求品牌和颜色可以初始

9、化为任意值,但速度的初始值必须为0)。(3)为私有属性提供访问器方法。注意:汽车品牌一旦初始化之后不能修改。(4)定义一个一般方法run(,用打印语句描述汽车奔跑的功能定义测试类VehicleTest,在其main方法中创建一个品牌为“benz”、颜色为“black”的汽车。public class Vehicle private String brand;private String color;private double speed;Vehicle(Vehicle(String brand,String colorthis.brand = brand;this.color = color

10、;speed = 0;public String getColor( return color;public void setColor(String color this.color = color;public double getSpeed( return speed;public void setSpeed(double speed this.speed = speed;public void run(System.out.println(getColor(+"的"+getBrand(+"的速度是"+getSpeed(;public String

11、 getBrand( return brand;10. 定义一个时间类,提供设定时间和显示时间的方法,其中设定时间的方法需要校验数据的正确性,并在main方法中验证。11. 设计BOOK类,包括ISBN号(string)、书名(string)、作者(string)以及表示是否已借出的成员(bool)。创建返回这些成员的访问方法,以及借书还书的方法。12、为图书馆创建一个Patron类,包括读者姓名、图书证号以及借阅费用(如果欠费的话)。创建设定借书费的方法。定义一个方法,返回一个布尔值,表示读者是否欠费。public class Patron private String name;priva

12、te String bookNum;private double money;public Patron(String name, String bookNum, double money = name;this.bookNum = bookNum;this.money = money;public boolean isOver( return money > 0 ? true : false;二、【选做题】1、(1)编写一个时间类MyTime,包含一个构造方法,3个私有成员变量hour,minute,second以及与它们相对应的get与set方法(如hour有ge

13、tHour和setHour方法,分别表示获得和设置hour),再加上一个转换成字符串的方法toString。(2)编写一个日期类MyDate,包含一个构造方法,3个私有成员变量year,month,day以及与它们相对应的get与set方法,再加上一个转换成字符串的方法toString。(3)编写一个FullTime类,包含一个MyTime类型的私有成员变量time和一个MyDate类型的成员变量date,以及与它们相对应的get与set方法,一个构造方法,再加上一个转换成字符串的方法toString。(4)假设当前时间是2002年7月30日22点12分35秒,编写一个程序,用FullTime

14、类设置时间为以上时间,并打印。public class MytimeTest public static void main(String args MyTime myTime = new MyTime(;myTime.setHour(20;myTime.setMinute(20;myTime.setSecond(18;MyDate myDate = new MyDate(;myDate.setYear(2012;myDate.setMonth(4;myDate.setDay(10;System.out.println(myDate.toString( + myTime.toString(;c

15、lass MyTime private int hour;private int minute;private int second;public int getHour( return hour;public void setHour(int hour this.hour = hour;public int getMinute( return minute;public void setMinute(int minute this.minute = minute;public int getSecond( return second;public void setSecond(int sec

16、ond this.second = second;Overridepublic String toString( return hour + "点" + minute + "分" + second + "秒"class MyDate private int year;private int month;private int day;public int getYear( return year;public void setYear(int year this.year = year;public int getMonth( ret

17、urn month;public void setMonth(int month this.month = month;public int getDay( return day;public void setDay(int day this.day = day;Overridepublic String toString( return year + "年" + month + "月" + day + "日"2、设计一个类Student,该类包括姓名、学号和成绩。设计一个方法,按照成绩从高到低的顺序输出姓名、学号和成绩信息。publ

18、ic class Student private String name;private String number;private int score;public Student( public Student(String name, String number, int score = name;this.number = number;this.score = score;public String getName( return name;public void setName(String name = name;public String getNumber( return number;public void setNumber(String number this.number = number;public int getScore( return score;public void setScore(int score this.score = score;public void sortByScore(Student studentsint max= students0.score;for(int i =0 ;i length ;i+ for(int j = 0;j length ;j+ if(studentsi.

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论