BufferedImage@10b30a7: BufferedImage@10b30a7: 
如上边两个是不是同一个对象???

解决方案 »

  1.   

    重写hashcode,equals 遵循下面两个原则:
    1.两个对象euqals相等,那么他们的hashcode一定要相等。
    2.两个对象hashcode相等,那么他们equals尽量相等。所以回答楼主,他们两个尽量是相等的,难免也会有巧合hashCode相等,但不一定相等的。但是你这个问题完全没意义,你可以重写一个对象euqals()相等,hashCode()不等;也可以hashCode()相等,euqals()不等。
    如果你遵从2者都同时正确重写了,那就是我最上面那个回答,相信我不会错
      

  2.   

    有可能是同一个对象。如果这个对象里的hashCode方法正确覆盖的话。
    如果有一个类:
    public class R{
    public int hashCode()//覆盖其hashCode方法:
    {
        return 12345;
    }
    }那这样不管这个类的任何对象,他的hashCode都是一样的,但是他不是同一个对象。
      

  3.   

    是的,就看你自定义的类,怎么去重写hashCode方法的了。