Java继承练习

练习一、选择1、在Java中,以下程序的输出结果是AA. Super–>printB. Test–>printC. Super–>printTest–>printD. 编译错误2、在Java中,以下关于方法重载和方法重写描述正确的是DA. 方法重载和方法重写实现的功能相同B. 方法重载出现在父子关系中,方法重写是在同一类中C. 方法重载的返回类型必须一致,参数项必须不同D. 方法重写需要出现在满足继承关系的子类中3、哪个选项中的方法插入到(1)处可以正确实
摘要由CSDN通过智能技术生成

练习
一、选择

1、在Java中,以下程序的输出结果是A
在这里插入图片描述

A. Super–>print
B. Test–>print
C. Super–>print
Test–>print
D. 编译错误
2、在Java中,以下关于方法重载和方法重写描述正确的是D
A. 方法重载和方法重写实现的功能相同
B. 方法重载出现在父子关系中,方法重写是在同一类中
C. 方法重载的返回类型必须一致,参数项必须不同
D. 方法重写需要出现在满足继承关系的子类中
3、哪个选项中的方法插入到(1)处可以正确实现方法重写C
在这里插入图片描述

A. public static void bark(){}
B. public final void display(){}
C. public void eat(String food){}
D. public boolean eat(String food){}
4、在下面程序的注释1处补充上下列()方法,会导致在编译过程中发生错误
A. public float getNum() { return 4.0f; }
B. private float getNum() {return 4.0f;}
C. public void getNum(double d){}
D. public double getNum(float d){ return 4.0f; }
5、如下Java源文件,编译并运行Child.java后,以下结果描述正确的是B
在这里插入图片描述

A. 编译错误:没有找到构造器Child()
B. 编译错误:没有找到构造器Parent1()
C. 正确运行,没有输出值
D. 正确运行,输出结果为:parent2
6、分析如下所示的Java代码,则选项中的说法正确的是C
在这里插入图片描述

A. 第2行错误,Test类的构造函数中参数名称应与其父类构造函数中的参数名相同
B. 第3行错误,应使用super关键字调用父类的name属性,改为super.name=“hello”
C. 第4行错误,调用父类构造方法的语句必须放在子类构造方法中的第一行
D. 程序编译通过,无错误
7、关于super的说法正确的是C
A. 是指当前子类的对象
B. 是指当前类的对象
C. 是指当前父类的对象
D. 可以用在main()方法中
8、阅读下面JAVA代码片段,正确的选项是B
在这里插入图片描述

A. 第1行编译错误,但能输出正确结果
B. 第2行编译错误,但能输出正确结果
C. 第3行编译错误,不能输出正确结果
D. 第4行编译错误,不能输出正确结果
9、下列关于super和this的说法正确的是(多选)ABD
A. this关键字通常指当前对象
B. super关键字则指父类对象
C. 在一个类中this只可以调用当前类中公有属性和方法
D. 在一个类中super可以调用父类中允许被访问的属性和方法
10、下列关于Object类的叙述错误的是D
A. Object类是所有类的父类
B. 所有类都可以继承Object中允许被继承的方法
C. 一个类没有使用extends关键字明确标识继承关系,则默认继承Object类
D. 要想继承Object类,必须使用extends关键字标识继承关系,否则不会实现继承
11、该段代码的运行结果为D
在这里插入图片描述

A. true
B. 相等
C. 不相等
D. false
12、在Java中,关于继承的说法错误的是C
A. 使用extends关键字实现一个类继承另一个类
B. 所有的Java类都直接或间接地继承了java.lang.Object类
C. 在子类的构造方法中,必须显式调用父类的构造方法
D. 在子类的构造方法中,可以通过super关键字调用父类的构造方法
13、下列关于final的说法错误的是C
A. final修饰的变量值不允许被修改
B. final修饰的方法不可被重写
C. final可以修饰所有方法
D. final不可以修饰构造方法
二、编程

1、编程练习:某公司要开发“XX车行管理系统”,请使用面向对象的思想,设计自定义类描述自行车、电动车和三轮车。
程序参考运行效果图如下:
在这里插入图片描述

任务
任务分析;
第一步:分析自行车、电动车和三轮车的共性:

1、都是非机动车,具有非机

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,以下是一道 Java 继承练习题: 假设有一个父 `Animal` 和两个子 `Dog` 和 `Cat`。`Animal` 包含一个 `name` 成员变量和一个 `eat` 方法,`Dog` 和 `Cat` 继承了 `Animal` ,并且都有一个 `sound` 方法。现在请你完成以下练习: 1. 在 `Animal` 中,添加一个 `sleep` 方法,并在 `Dog` 和 `Cat` 中覆盖(重写)该方法,使得 `Dog` 和 `Cat` 的 `sleep` 方法输出不同的内容。 2. 在 `Dog` 和 `Cat` 中,实现各自的 `sound` 方法,使得 `Dog` 的 `sound` 方法输出 `"汪汪"`,`Cat` 的 `sound` 方法输出 `"喵喵"`。 3. 编写一个名为 `Main` 的测试,并在其中创建一个 `Dog` 对象和一个 `Cat` 对象,分别调用它们的 `eat`、`sleep` 和 `sound` 方法。 你可以参考以下代码: ```java public class Animal { private String name; public Animal(String name) { this.name = name; } public void eat() { System.out.println(name + " is eating"); } public void sleep() { System.out.println(name + " is sleeping"); } } public class Dog extends Animal { public Dog(String name) { super(name); } public void sleep() { System.out.println(getName() + " is sleeping soundly"); } public void sound() { System.out.println("汪汪"); } } public class Cat extends Animal { public Cat(String name) { super(name); } public void sleep() { System.out.println(getName() + " is sleeping quietly"); } public void sound() { System.out.println("喵喵"); } } public class Main { public static void main(String[] args) { Animal dog = new Dog("旺财"); Animal cat = new Cat("小花"); dog.eat(); dog.sleep(); ((Dog) dog).sound(); cat.eat(); cat.sleep(); ((Cat) cat).sound(); } } ``` 希望这个练习题能够帮助你理解 Java 继承的相关知识。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值