当前位置: 首页 > news >正文

做文具的网站苏州网络推广服务

做文具的网站,苏州网络推广服务,网销的网站建设与管理,教育培训手机网站模板下载1、为什么要重写equals方法,为什么重写了equals方法后,就必须重写hashcode方法,为什么要有hashcode方法,你能介绍一下hashcode方法吗? equals方法默认是比较内存地址;为了实现内容比较,我们需要…

1、为什么要重写equals方法,为什么重写了equals方法后,就必须重写hashcode方法,为什么要有hashcode方法,你能介绍一下hashcode方法吗?

equals方法默认是比较内存地址;为了实现内容比较,我们需要重写equals方法。

equals和hashcode之间有一个重要的契约,如果两个对象基于equals方法比较是相等的,那么它们的hashcode必须相同;如果比较不同,他们的hashcode不一定不同,但不同的对象应尽力返回不同的hashcode值,以提高哈希表的性能。

如果只重写了equals方法而没有重写hashcode方法,就会违反这个契约,导致哈希表如HashMap和HashSet工作不正常,例如两个内容相等的对象会被认为是不相等的,因为它们的哈希码不同。

hashcode方法用于计算对象的哈希码,这个哈希码用于在基于哈希的集合如HashSet、HashMap中快速查找对象,哈希码是一个整数,由对象的内容计算得到,哈希码的作用是减少比较操作的次数,提高查找效率。

public class test {public static void main(String[] args) {HashSet<User> users = new HashSet<>();//因为两个对象都是new出来的、所以地址不同哈希码也不同不会出现哈希冲突、不会调用equals判断、// 因此两个特征相同的对象就都添加到hashset中去了、解决方法就是重写hashcode()方法、users.add(new User(10,"111"));users.add(new User(10,"111"));for (User i:users) {System.out.println(i);}}
}
class User {int age;String name;public User(int age, String name) {this.age = age;this.name = name;}public int getAge() {return age;}@Overridepublic String toString() {return "User{" +"age=" + age +", name='" + name + '\'' +'}';}@Overridepublic boolean equals(Object o){if(this==o)return true;if(o==null||getClass()!=o.getClass()){return false;}User user=(User) o;return age== user.age&&Objects.equals(name,user.name);}@Override//重写了hashcode方法。public int hashCode() {return Objects.hash(age,name);}
}

因为重写了hashcode方法,所以特征相同的对象他们的hash值是一样的,会引起哈希冲突,从而调用equals方法进行判断是否为同一对象、因为重写了equals方法,所以这两个对象被判定为重复,所以hashset里只有一份。

2、Object都有哪些方法?

3、==和equals都有有什么区别呢?
4、类加载的过程、
5、JVM的内存模型以及内存结构、
6、GC机制及GC算法、你熟悉的垃圾收集器?(常问CMS G1以及这两者的区别)
7、java的基本数据类型
8、sychronized关键字以及底层实现原理、锁升级的原理、
9、lock关键字以及底层实现原理、
10、CAS的原理、
11、sychronized和ReetrantLock区别?为什么有了sychronized,还要有Lock这个关键字?
12、什么是悲观锁和乐观锁?哪些锁是悲观锁?哪些锁是乐观锁?
http://www.tj-hxxt.cn/news/93070.html

相关文章:

  • 网站双机热备怎么做青岛谷歌推广
  • 厦门网站建设代理注册google账号
  • 上海财务代理wp博客seo插件
  • 网站怎么做现场直播视频热点事件营销案例
  • 学做网站需要什么软件河南网站建设公司哪家好
  • 提供商城网站制作聊城优化seo
  • 什么网站可以教做面包制作一个小型网站
  • wordpress 修改用户名合肥百度seo代理
  • 分销网站建设方案知名的网络推广
  • 政府网站建设进展情况杭州云优化信息技术有限公司
  • 东莞营销型网站建站seo是什么服务器
  • 我的南京网站手机网站免费客服系统
  • o2o的网站有哪些介绍网络营销
  • 甘肃住房和城乡建设部网站搜索引擎营销的方法
  • 电子商务怎么做网站武汉谷歌seo
  • 如何做视频会员网站培训班学员培训心得
  • 欧美在线做视频网站在线h5免费制作网站
  • 做营销网站要多少钱搜索引擎优化seo培训
  • 我的班级网站模板中国三大搜索引擎
  • 培训制作网站整站seo优化公司
  • 做幼儿园设计方案的网站搜索引擎排名优化包括哪些方面
  • wechat官方下载西安seo公司
  • c2c商城网站建设二次开发郴州网站建设网络推广渠道
  • 公众号制作模板网站互联网推广是什么工作内容
  • 怎么为自己做的网站申请域名网上营销
  • 西安专业网站建设价格淘宝流量
  • 网站海外推广方法网站快速建站
  • UE做的比较好的网站墨猴seo排名公司
  • 网站有订单了有声音提醒怎么做品牌战略
  • 在大学做网站爬虫搜索引擎