没有合适的资源?快使用搜索试试~ 我知道了~
java多态练习题
1星 需积分: 40 58 下载量 23 浏览量
2018-04-21
17:52:18
上传
评论 14
收藏 17KB TXT 举报
温馨提示
试读
36页
java多态、继承练习题,包含题目与答案,............................................................................................................
资源推荐
资源详情
资源评论
1.写一个Java应用程序,主要是体现父类子类间的继承关系。父类:鸟,子类:麻雀、鸵鸟、鹰。子类继承父类的一些特点,如都是鸟的话就都会有翅膀、两条腿等,但它们各自又有各自的特点,如麻雀的年龄、体重;鸵鸟的身高、奔跑速度;鹰的捕食、飞翔高度等。
2.实现一个名为Person的类和它的子类Employee,Employee有两个子类Faculty和Staff。具体要求如下:
(1)Person类中的属性有:姓名name(String类型)、地址address(String类型)、电话号码telephone(String类型)和电子邮件地址email(String类型)。
(2)Employee类中的属性有:办公室office(String类型)、工资wage(double类型)和受雇日期hiredate(String类型)。
(3)Faculty类中的属性有:学位degree(String类型)、级别level(String类
型)。
(4)Staff类中的属性有:职务称号duty(String类型)。
3.在包a中编写一个类Father,具有属性:年龄(私有)、姓名(公有);具有功能:工作(公有)、开车(公有)。在包a中编写一个子类Son,具有属性:年龄(受保护的)、姓名;具有功能:玩(私有)、学习(公有)。最后在包b中编写主类Test,在主类的main方法中测试类Father与类Son。
4.编写一个Car类,具有final类型的属性品牌,具有功能drive;定义其子类Aodi和Benchi,具有属性:价格、型号;具有功能:变速;定义主类E,在其main方法中分别创建Aodi和Benchi的对象,并测试对象的特性。
5.定义如下图4-1所示的三个类,People类中的三个方法分别输出一些信息,ChinesePeople和AmericanPeople类重写父类的三个方法。
6.按要求编写一个Java应用程序:
(1)定义一个矩形类Rect,包含两个protected属性:矩形的宽width和高height。一个带有两个参数的构造方法,用于将width和height属性初始化。一个不带参数的构造方法,将矩形的宽和高都初始化为10。还有两个一般方法:求矩形面积的方法getArea()和求矩形周长的方法getPerimeter()。
(2)通过继承Rect类编写一个具有确定位置的矩形类PlainRect,其确定位置用矩形的左上角坐标来标识,有两个属性:矩形左上角坐标startX和startY。两个构造方法:一个是带4个参数的构造方法,用于对startX、startY、width和height属性初始化。一个是不带参数的构造方法,将矩形初始化为左上角坐标、长和宽都为0的矩形。
添加一个方法:判断某个点是否在矩形内部的方法isInside(doublex,double y)。如在矩形内,返回true, 否则,返回false。提示:点在矩形内是指满足条件x >= startX && x <= (startX + width) && y >=(startY - height) && y <= startY
(3)编写PlainRect类的测试程序,创建一个左上角坐标为(10,10),长为20,宽为10的矩形对象;计算并打印输出矩形的面积和周长;判断点(25.5,13)是否在矩形内,并打印输出相关信息。
7.按要求编写一个Java应用程序:
(1)定义一个类,描述一个矩形,包含有长、宽两种属性和计算面积方法。
2.实现一个名为Person的类和它的子类Employee,Employee有两个子类Faculty和Staff。具体要求如下:
(1)Person类中的属性有:姓名name(String类型)、地址address(String类型)、电话号码telephone(String类型)和电子邮件地址email(String类型)。
(2)Employee类中的属性有:办公室office(String类型)、工资wage(double类型)和受雇日期hiredate(String类型)。
(3)Faculty类中的属性有:学位degree(String类型)、级别level(String类
型)。
(4)Staff类中的属性有:职务称号duty(String类型)。
3.在包a中编写一个类Father,具有属性:年龄(私有)、姓名(公有);具有功能:工作(公有)、开车(公有)。在包a中编写一个子类Son,具有属性:年龄(受保护的)、姓名;具有功能:玩(私有)、学习(公有)。最后在包b中编写主类Test,在主类的main方法中测试类Father与类Son。
4.编写一个Car类,具有final类型的属性品牌,具有功能drive;定义其子类Aodi和Benchi,具有属性:价格、型号;具有功能:变速;定义主类E,在其main方法中分别创建Aodi和Benchi的对象,并测试对象的特性。
5.定义如下图4-1所示的三个类,People类中的三个方法分别输出一些信息,ChinesePeople和AmericanPeople类重写父类的三个方法。
6.按要求编写一个Java应用程序:
(1)定义一个矩形类Rect,包含两个protected属性:矩形的宽width和高height。一个带有两个参数的构造方法,用于将width和height属性初始化。一个不带参数的构造方法,将矩形的宽和高都初始化为10。还有两个一般方法:求矩形面积的方法getArea()和求矩形周长的方法getPerimeter()。
(2)通过继承Rect类编写一个具有确定位置的矩形类PlainRect,其确定位置用矩形的左上角坐标来标识,有两个属性:矩形左上角坐标startX和startY。两个构造方法:一个是带4个参数的构造方法,用于对startX、startY、width和height属性初始化。一个是不带参数的构造方法,将矩形初始化为左上角坐标、长和宽都为0的矩形。
添加一个方法:判断某个点是否在矩形内部的方法isInside(doublex,double y)。如在矩形内,返回true, 否则,返回false。提示:点在矩形内是指满足条件x >= startX && x <= (startX + width) && y >=(startY - height) && y <= startY
(3)编写PlainRect类的测试程序,创建一个左上角坐标为(10,10),长为20,宽为10的矩形对象;计算并打印输出矩形的面积和周长;判断点(25.5,13)是否在矩形内,并打印输出相关信息。
7.按要求编写一个Java应用程序:
(1)定义一个类,描述一个矩形,包含有长、宽两种属性和计算面积方法。
(2)编写一个类,继承自矩形类,同时该类描述长方体,具有长、宽、高属性和计算体积的方法。
(3)编写一个测试类,对以上两个类进行测试,创建一个长方体,定义其长、宽、高,输出其底面积和体积。
8.编写一个类A,该类创建的对象可以调用方法f输出小写的英文字母表。然后再编写一个A类的子类B,要求子类B必须继承A类的方法f(不允许重写),子类B创建的对象不仅可以调用方法f输出小写的英文字母表,而且可以调用子类新增的方法g输出大写的英文字母表。最后编写主类C,在主类的main方法中测试类A与类B。
9.编写一个Java应用程序,该程序包括3个类:Monkey、People类和主类E。要求:
(1)Monkey中有个构造方法:Monkey (String s),并且有个public void speak()方法,在speak方法中输出“咿咿呀呀……”的信息。
(2)People是Monkey的子类,在People类中重写父类的方法speak(),在speak方法中输出“别说话!”的信息。
(3)在People类中新增方法void think(),在think方法中输出“认真思考!”。
(4)在主类E的main方法中创建Monkey与People的对象来测试这两个类的功能。
10.编写一个Java应用程序,设计一个汽车类Vehicle,包含的属性有车轮个数wheels和车重weight。小车类Car是Vehicle的子类,其中包含的属性有载人数loader。卡车类Truck是Car类的子类,其中包含的属性有载重量payload。每个类都有构造方法和输出相关数据的方法。最后,写一个测试类来测试这些类的功能。
11.编写一个Shape类,具有属性:周长和面积;定义其子类三角形和矩形,分别具有求周长的方法。定义主类E,在其main方法中创建三角形和矩形类的对象,并赋给Shape类的对象a、b,使用对象a、b来测试其特性。
12.编写一个Java应用程序,该程序包括3个类: A类、B类和主类E。其中类B是类A的子类,在子类B中新增了成员变量和成员方法,并且隐藏了父类A的成员变量和重写了父类A的成员方法。在主类E的main方法中,创建类B的对象并赋给父类A的对象a,使用上转型对象a来测试上转型对象的一些特性
1.
// 父类
public class Bird {
int leg = 2;
int flychi = 2;
(3)编写一个测试类,对以上两个类进行测试,创建一个长方体,定义其长、宽、高,输出其底面积和体积。
8.编写一个类A,该类创建的对象可以调用方法f输出小写的英文字母表。然后再编写一个A类的子类B,要求子类B必须继承A类的方法f(不允许重写),子类B创建的对象不仅可以调用方法f输出小写的英文字母表,而且可以调用子类新增的方法g输出大写的英文字母表。最后编写主类C,在主类的main方法中测试类A与类B。
9.编写一个Java应用程序,该程序包括3个类:Monkey、People类和主类E。要求:
(1)Monkey中有个构造方法:Monkey (String s),并且有个public void speak()方法,在speak方法中输出“咿咿呀呀……”的信息。
(2)People是Monkey的子类,在People类中重写父类的方法speak(),在speak方法中输出“别说话!”的信息。
(3)在People类中新增方法void think(),在think方法中输出“认真思考!”。
(4)在主类E的main方法中创建Monkey与People的对象来测试这两个类的功能。
10.编写一个Java应用程序,设计一个汽车类Vehicle,包含的属性有车轮个数wheels和车重weight。小车类Car是Vehicle的子类,其中包含的属性有载人数loader。卡车类Truck是Car类的子类,其中包含的属性有载重量payload。每个类都有构造方法和输出相关数据的方法。最后,写一个测试类来测试这些类的功能。
11.编写一个Shape类,具有属性:周长和面积;定义其子类三角形和矩形,分别具有求周长的方法。定义主类E,在其main方法中创建三角形和矩形类的对象,并赋给Shape类的对象a、b,使用对象a、b来测试其特性。
12.编写一个Java应用程序,该程序包括3个类: A类、B类和主类E。其中类B是类A的子类,在子类B中新增了成员变量和成员方法,并且隐藏了父类A的成员变量和重写了父类A的成员方法。在主类E的main方法中,创建类B的对象并赋给父类A的对象a,使用上转型对象a来测试上转型对象的一些特性
1.
// 父类
public class Bird {
int leg = 2;
int flychi = 2;
剩余35页未读,继续阅读
资源评论
- zhuhuixiu2021-04-30你先学下多态是什么再过来发,什么玩意
qq_42036783
- 粉丝: 1
- 资源: 7
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功