小编Abh*_*air的帖子

Hashcode平等是否意味着引用基于参考的平等?

我读到要在java中使用equals()方法我们还必须覆盖hashcode()方法,并且相等(逻辑)对象应该具有eual哈希码,但这并不意味着基于引用的相等!这是我的重写equals()方法的代码,我应该如何覆盖hashcode方法:

@Override    
public boolean equals(Object o)
        {
            if (!(o instanceof dummy))
                return false;
            dummy p = (dummy) o;
            return (p.getName() == this.getName() && p.getId() == this.getId() && p.getPassword() == this.getPassword());

        } 
Run Code Online (Sandbox Code Playgroud)

我只是想了解它是如何工作的,所以只有三个字段,即名称,id密码,只是试图比较我在main()中定义的两个对象!我还需要知道是否总是需要覆盖hashcode()方法和equals()方法?

java methods overriding object

3
推荐指数
1
解决办法
746
查看次数

标签 统计

java ×1

methods ×1

object ×1

overriding ×1