java study 08day--equal()与toString()

一、equal()

Object:是所有对象的直接后者间接父类,传说中的上帝。

该类中定义的肯定是所有对象都具备的功能。

Object类中已经提供了对对象是否相同的比较方法。

 

如果自定义类中也有比较相同的功能,没有必要重新定义。

只要沿袭父类中的功能,建立自己特有比较内容即可。这就是覆盖。

 

= =object.equal()都进行的是地址比较.

class Demo //extends Object

{

       private int num;

       Demo(int num)

       {

              this.num = num;

       }

      

       public boolean equals(Object obj)//Object obj = new Demo();

       {

              if(!(obj instanceof Demo))

                     return false;

              Demo d = (Demo)obj;//向下转型

              return this.num == d.num;

       }

 

二、toString()

Demo d1 = new Demo(4);

System.out.println(d1);//输出语句打印对象时,会自动调用对象的toString方法。打印对象的字符串表现形式。

输出的结果为:d1所属的类Demo@该对象的哈希值。

Class c = d1.getClass();

System.out.println(c.getName()+"@@"+Integer.toHexString(d1.hashCode()));

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值