Code With Mosh Java Inheritance Quiz

Code With Mosh Java Inheritance Quiz
最新回答
长发及腰已是过去

2021-10-01 08:14:00

1- b) class ClassA extends ClassB

  • Java中使用extends关键字实现类继承。

2- False

  • equals()默认比较对象引用地址,而非内容。需重写equals()和hashCode()才能按值比较。

3- 基于对象内存地址的哈希值

  • Object.hashCode()默认返回对象内存地址的整数表示,用于哈希表等场景。

4- 无参构造函数

  • 若未显式定义,编译器自动添加无参构造方法;若定义了带参构造方法,则需手动添加无参构造方法。

5- a) public Customer(String name) { }

  • 构造方法无返回类型,名称必须与类名完全一致。

6- 引用父类的关键字

  • super用于访问父类成员或调用父类构造方法,与this(当前对象引用)形成对比。

7- 访问权限差异

  • private:仅限类内访问;protected:类内及子类可访问(跨包也可)。

8- 包级私有(默认)

  • 无修饰符时,成员在包内公开,包外不可见(相当于default访问权限)。

9- 方法重写 vs 重载

  • 重写(Override):子类修改父类方法实现,需相同签名;重载(Overload):同方法名不同参数列表。

10- 编译时校验- @Override确保方法签名与父类一致,避免拼写错误;父类方法删除时编译器会提示。

11- 可以传递- 子类对象可自动向上转型为父类类型;若需访问子类特有成员,需显式向下转型(如(Customer)user)。

12- 类型检查- instanceof判断对象是否属于某类或其子类,常用于安全类型转换前检查。

13- 四大原则- 封装:数据与操作绑定;抽象:隐藏实现细节;继承:代码复用;多态:同一接口不同行为。

14- 共享通用代码- 抽象类含部分实现,强制子类实现抽象方法,适用于定义通用模板。

15- 可以- 抽象类可不包含抽象方法,但反之不成立(含抽象方法必须声明为抽象类)。

16- 防止继承- final类不可被继承,确保设计不可变(如String类)。

17- 多继承冲突- 多重继承中,若父类有同名方法,子类继承路径不明确(Java通过接口默认方法解决类似问题)。

18- 不支持- Java通过单继承+接口实现多态,避免多继承的复杂性。