肯定不一样啦。equals方法是继承于object类,默认为==,判断两个对象是否相等,当然有些类像String这样重写过equals方法的类除外了。
hashcode:主要应用在hashmap和hashtree,hashtable集合框架里面。这些集合类底层都是哈希数据结构,这些集合框架不允许有相同对象存入。那么如何判断是否是同个对象呢:这些集合类先通过比较对象自身的hashcoe方法,如果是否再比较equals方法,再为否就可以判断是两个对象了,就可以存入了。我们实际使用的时候肯定不能单纯都通过==来比较是否是同一事物,所以要重写这两个方法来满足现实需求。因能力有限,可能回答的不到位。详细你可以参考有关集合框架的视频教材,讲的比较深入。 |