码迷,mamicode.com
首页 > 其他好文 > 详细

equals和==方法比较(二)--Long中equals源码分析

时间:2019-01-09 20:30:16      阅读:247      评论:0      收藏:0      [点我收藏+]

标签:lse   public   ceo   引用   eof   object   自己   源码   --   

equals方法是Object类中的方法,java中所有的对象均继承自Object类,也就继承了equals方法,下面是Object类中equals方法的实现,

public boolean equals(Object obj) {
        return (this == obj);
    }

可以看到,equals方法使用的就是==的比较方式,那么如果是两个引用类型,比较的当然是两个引用地址。

java又规定所有继承自Object的类都可以重写equals方法,即实现自己的比较逻辑,但Long这个包装类(其他的包装类也是如此)没有重写了equals方法,而是进行了重载,如下

public boolean equals(Object obj) {
        if (obj instanceof Long) {
            return value == ((Long)obj).longValue();
        }
        return false;
    }

 

equals和==方法比较(二)--Long中equals源码分析

标签:lse   public   ceo   引用   eof   object   自己   源码   --   

原文地址:https://www.cnblogs.com/teach/p/10246455.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!