第04周 课前问题列表
1.为什么说Java中的所有类都is-a Object?
因为在Java中所有类都直接或者间接地继承Object类,如果一个类没有明确指定继承自哪个类,那么它默认继承自Object类。
2.在JDK文档中查找Object的toString方法。说一说,该方法有什么用?使用Eclipse查看Object的toString方法的代码,结合代码说说该代码的用途。
toString()方法的主要目的是返回一个描述对象的字符串表示形式,返回类名和对象的哈希码(十六进制数字)。toString()是一个公共方法,可以被任何地方调用。
3.在IDE中查看Object的equals方法的代码,说说equals的用途。该方法被什么修饰符修饰,意味着什么?什么时候需要覆盖equals方法?结合String类的equals方法说说覆盖如何体现子类特有的特性?
(1)被public修饰符修饰,这意味着这个方法可以被任何其他类访问。
(2)当在自定义类中需要比较对象的实际内容而不是引用时,需要覆盖equals方法。例如,在String类中,equals方法被覆盖,用来比较两个字符串对象的内容是否相同,而不是它们的引用。
4.如果在子类中想要复用父类的代码,要怎么办?
直接调用父类的非私有方法或使用super关键字调用父类的方法。