Object类中的equals与toString方法概述

---------------------- android培训java培训、期待与您交流! ----------------------

equals方法是java中用来比较两个对象是否相等的方法,它实质上是比较两个对象的地址值是否相等,如果相等就返回true,不相等就返回false。由于其定义在Object中,任何类有都是Object类的子类,都会继承Object类,所以任何对象的建立后都具备equals方法,可有时我们需要的并不是对对象地址值的比较,这时我们就需要复写equals方法。在复写的过程中我们应注意复写方法,参数列表中是Object类型,因为Object类中equals方法就是这样的,不要想当然的将其改为要比较的类型,那样就不是方法的复写,而是方法的重载了,语句是:

public boolean equals(Object obj)

{

//方法主体语句,也即是自己想要比较的量

}

这里面就涉及到了多态的知识,因为在调用方法是我们知道一切类都是Object的子类,那就是说我们可传入一切对象,那我们就应该进行类型的变换,也即是类型的向下转,然后我们再建立两个对象就可以进行自己想要的比较了,如年龄,数值等等。

toString方法是java中用来将对象的哈希值(也即内存地址)打印的方法,它也定义在Object类中,与equals方法相同,任何对象的建立都可以直接的运用toString方法。在很多场合下打印地址值无疑是无意义的,所以在使用该方法时往往也是要进行复写的,语句为:

public String toString( )

{

      //需要表现的字符串内容

}

java中在描述类时equalstoString方法往往都是要根据具体情况进行复写的,与这两中方法相似,Object类中定义的很多方法都会被复写,原因也是很显然的,Object类中的方法都是相对“共性”的方法主体,而在每个类的实际需求中,是不同于原方法主体的内容的,所以是要进行复写的。

---------------------- android培训java培训、期待与您交流! ----------------------
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值