不能重写 equals方法和==方法以及hashcode方法
实现 同一个类的两个引用类型的变量 指向同一个对象,但是这两个对象的属性值不相等
也就是说
class1 c1=new class1("忍者") ;
class1 c2=new class1("死神") ;
就是说c1  c2指向同一个对象,但是c1.name="忍者";
                                c2.name="死神";
可能实现吗??
换句话说 两个对象equals方法比较返回false,但是这两个对象是同一个对象!
这能实现吗 ??能的话怎么实现??
希望有具体代码!

解决方案 »

  1.   

    不可能 我想补充问你,不重写equals和hashCode 你想要干什么?你觉得实现这样的代码会不会让人无法理解呢?
      

  2.   

    不是的!
    在集合中有这样一句话 只要两个对象用equals方法比较返回false,set就会接受这两个对象(甚至这两个对象是同一个对象)! 意思是说 只有重写才会出现这种极端的情况吗》》》???
      

  3.   

    @Override public boolean equals(Object o){return false;}
      

  4.   


    不懂你在说啥, 你不是说不能重写 equals方法么, 还扯Set跟 Set又有什么关系,你到底要问啥?
      

  5.   

    http://blog.csdn.net/mengxiangyue/article/details/6816186