如果有两个不同的对象,他们的hashCode一定不相等。
答:不对。
如果两个对象的hashCode不相等,那他俩一定是不同的对象。
答:对。
重写equals注意事项:一定要重写hashCode方法。
为什么重写equals要重写hashCode?
因为hashmap中需要他俩协同工作,由equals判断两个对象值是否相等,然后根据hashcode存储。
字符串不一样,对象地址不一样,散列码不一样。
s和t 的hashCode是一样的。
只要是new出来的和其他的地址都不一样。
s 和 t 俩地址不相等,所以。String类型,字符串重写了equals,equals重写了hashCode。因为重写的equals相等,所以它的hashCode相等,就认为他俩的散列码相等了。
默认的hashCode 是根据地址写出来的。
new完之后没有对句柄的引用,所以被回收。. 调用 在堆中发现的对象,没有任何句柄引用它,记录它,就被回收了。
通过类.调用,没有new 静态方法都能通过类.调用。
getName:获取类名字