第1关:通关任务一
编程要求
-
声明一个抽象类
Pet
,封装属性name
和sex
,声明一个带有两个参数的构造函数,声明抽象方法void talk()
和void eat()
; -
声明一个
Dog
类继承自Pet
,封装属性color
,声明带有三个参数的构造函数,复写talk()
和eat()
方法; -
声明一个
Cat
类继承自Pet
,封装属性weight
,声明带有三个参数的构造函数,复写talk()
和eat()
方法; -
编写测试类,通过有参构造函数实例化
Dog
类对象,调用talk()
方法和eat()
方法;通过有参构造函数实例化Cat
类对象 ,调用talk()
方法和eat()
方法; -
具体输出要求请看测试说明。
测试说明
测试输入: 泰迪
male
brown
波斯猫
male
2.5
预期输出: 名称:泰迪,性别:male,颜色:brown,汪汪叫
泰迪吃骨头!
名称:波斯猫,性别:male,体重:2.5kg,喵喵叫
波斯猫吃鱼!
第2关:通关任务二
编程要求
按照要求编写一个Java应用程序:
-
定义一个抽象类
Person
,包含抽象方法eat()
,封装属性name
、sex
、age
,声明包含三个参数的构造方法; -
定义一个
Chinese
类,继承自Person
类,重写父类的eat()
方法,并定义一个自己特有的方法shadowBoxing()
; -
定义一个
English
类,继承自Person
类,重写父类的eat()
方法,并定义一个自己特有的方法horseRiding()
; -
编写测试类,定义一个
showEat()
方法,使用父类作为方法的形参,实现多态,分别调用showEat()
方法,通过强制类型转换调用各自类特有的方法; -
具体输出要求请看测试说明。
测试说明
测试输入: 张三
男
20
史蒂文
男
22
预期输出: 姓名:张三,性别:男,年龄:20,我是中国人,我喜欢吃饭!
姓名:史蒂文,性别:男,年龄:22,我是英国人,我喜欢吃三明治!
张三在练习太极拳!
史蒂文在练习骑马!
第3关:通关任务三
编程要求
教练和运动员案例:
-
乒乓球运动员和篮球运动员;
-
乒乓球教练和篮球教练;
-
跟乒乓球相关的人员都需要学习英语;
-
分析,这个案例中有哪些抽象类,哪些接口,哪些具体类。
分析过程如下:
- 具体输出要求请看测试说明。
测试说明
测试输入: 张继科
30
易建联
31
刘国梁
42
杜锋
37
预期输出: 张继科---30
人都是要睡觉的
乒乓球运动员吃大白菜,喝小米粥
乒乓球运动员学习如何发球和接球
乒乓球运动员说英语
----------------
易建联---31
人都是要睡觉的
篮球运动员吃牛肉,喝牛奶
篮球运动员学习如何运球和投篮
----------------
刘国梁---42
人都是要睡觉的
乒乓球教练吃小白菜,喝大米粥
乒乓球教练教如何发球和接球
乒乓球教练说英语
----------------
杜锋---37
人都是要睡觉的
篮球教练吃羊肉,喝羊奶
篮球教练教如何运球和投篮
----------------