第04周 预习作业:类的设计与继承

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

在 Java 中所有类都继承自Object类,所以可以说所有类都 “is-a
Object”,即所有类都是Object类的一种特殊类型,具有Object类的特性和行为。所有类都是Object类的子类,Object是一个超级父类。

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

根据JDK文档,该方法具有返回对象的字符串表示形式的功能。JDK中对于toString的解释
代码如图所示:在这里插入图片描述

这段代码是重写了Object类中的toString方法。其用途是为了提供一个默认的字符串表示形式,用于描述当前对象。
具体来说,这个重写后的toString方法返回的字符串包含了当前对象的类名和对象的哈希码的十六进制表示。

//输入该代码之后,运行结果如下所示:

   System.out.println(new Object().toString());

在这里插入图片描述

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

equals的代码如下图所示:
equals的代码段
1.该代码的用途用来比较两个对象是否相等。
2.该方法被被public修饰,意味着可以在任何地方使用该方法。
3.当需要按照对象的内容而不是引用进行比较时,就需要覆盖equals方法。例如,如果认为两个具有相同属性值的不同对象实例在逻辑上是相等的,就应该重写equals方法。
4.String类是Object类的子类,它根据自身的特性重写了equals方法,以满足字符串比较的需求。对于String类来说,特有的特性就是比较字符串的字符序列是否一致,而不是像Object类那样比较引用。
例如,两个不同的String对象可能存储相同的字符串内容,通过String类的equals方法可以判断它们在内容上是相等的,而Object类的默认equals方法会判断它们不相等,因为它们是不同的对象引用。

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

1.调用父类的构造方法在子类的构造方法中,可以使用super()来调用父类的无参构造方法,或者使用super(参数列表)来调用父类的有参构造方法。这样可以在创建子类对象时,先初始化父类的部分。
2.使用super关键字调用父类的方法 在子类的方法中,可以使用super.方法名(参数列表)来调用父类中被重写的方法。
3.继承父类的成员变量和方法 子类可以直接访问父类的非私有成员变量和方法,从而实现代码的复用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值