第04周 预习:面向对象设计、继承与Object

1、为什么说Java中的所有类都is-a Object?

(1)可以使不同对象之间可以统一、互转。我觉得其中还包括 toString(),wait()…等公共方法的

​ 统一定义

​ (2)对父类的逻辑处理统一,不需要根据有没有父类分两种实现

2、在JDK文档中查找Object的toString方法。说一说,该方法有什么用?使用Eclipse查看Object的toString方法的代码,结合代码说说该代码的用途。

  1. 返回该对象的字符串表示,该字符串由类名(对象是该类的一个实例)、at 标记符“@”和此对象哈希码的无符号十六进制表示组成。

    public String toString() {
        return getClass().getName() + "@" + Integer.toHexString(hashCode());
    }
    

3、在Eclipse中查看Object的equals方法的代码,说说equals的用途。该方法被什么修饰符修饰,意味着什么?什么时候需要覆盖equals方法?结合String类的equals方法说说覆盖如何体现子类特有的特性?

  1. Object equals() 方法用于比较两个对象是否相等,是判断两个对象引用指向的是同一个对象
  2. public修饰,可被Object类的对象调用
  3. 如果类具有自己特有的“逻辑相等”概念,而且还没有覆盖equals以实现期望的行为,这时候我们就需要覆盖equals方法。
  4. String类的equals体现了其特有的逻辑内容——字符串

4、如果在子类中想要复用父类的代码,要怎么办?

  1. 组合:在一个类中创建另一个类的实例从而达到代码复用的效果
  2. 继承:在定义一个类的时候使用extends 关键字来继承另一类从而达到代码复用的效果
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值