1.为什么说Java中的所有类都is-a Object?
(1)java编程中常常需要比较两个对象是否相等,判断对象就需要equal和hashCode来做比较,将这种共性的方法写在同一个父类Object可以有效的减少重复的代码
(2)也可以使不同对象之间统一、互转
2.在JDK文档中查找Object的toString方法。说一说,该方法有什么用?使用Eclipse查看Object的toString方法的代码,结合代码说说该代码的用途。
该方法的作用是返回当前类名加相对内存地址的16进制显示
public String toString() {
return getClass().getName() + "@" + Integer.toHexString(hashCode());
}
3.在Eclipse中查看Object的equals方法的代码,说说equals的用途。该方法被什么修饰符修饰,意味着什么?什么时候需要覆盖equals方法?结合String类的equals方法说说覆盖如何体现子类特有的特性?
(1) 判断两个对象是否相等
(2)被public修饰,意味着可以被Object类的对象调用
(3)当类具有自己特有的逻辑相等的概念的时候,Object中的equals方法无法满足要求,就需要覆盖equals方法
(4)String类的equals体现出其独特的内容:字符串
4.如果在子类中想要复用父类的代码,要怎么办?
继承:在定义其他类的时候使用extends关键字继承所需类来达到复用父类代码的效果