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

珠海市官网网站建设价格北京网站上排名

珠海市官网网站建设价格,北京网站上排名,谷歌浏览器对做网站有什么好处,太原seo外包服务集合篇 Java面试题-集合篇HashMap底层实现原理概述javaSE进阶-哈希表 为了满足hashmap集合的不重复存储#xff0c;为什么要重写hashcode和equals方法#xff1f; 首先理解一下hashmap的插入元素的前提#xff1a; hashmap会根据元素的hashcode取模进行比较#xff0c;当…集合篇 Java面试题-集合篇HashMap底层实现原理概述javaSE进阶-哈希表 为了满足hashmap集合的不重复存储为什么要重写hashcode和equals方法 首先理解一下hashmap的插入元素的前提 hashmap会根据元素的hashcode取模进行比较当hashcode相等时会再次去比较元素之间的内容值当内容值也相等时就代表元素重复。 所以当元素与元素之间的hashcode值与内容值相同时hashmap就会认为元素重复 重写hashCode是为了让两个具有相同值的对象的Hash值相等。 重写equals方法是为了比较两个不同对象的值是否相等。 同时重写hashCode()与equals()是为了满足HashSet、HashMap等此类集合的相同对象的不重复存储。 当前有两个不同对象他们的内容是相同的但是在hashmap看来他们就是重复的所以我们重写hashcode方法保证相同值的两个对象的hashcode相同重写equals方式是比较两个不同对象的值是否相同。 equals和hashCode 基础篇 与 equals的区别 默认情况下 equals方法也是比较的两个对象之间的内存地址是否相同但是我们可以重写equals方法达到不同的效果如String类就重写equals方法String类的equals方法会先去比较两个对象的内存是否相同相同就返回true如果不相同也不会立马放回false而是会再次比较两个String对象的数值是否相同。 多线程 java 多线程 面试题整理(更新…) interrupt()方法 interrupt方法用于中断线程需要注意的是只是将线程的状态设置为“中断”状态并没有真正的停止这个线程需要线程自己去监视(interrupted、isinterrupted)线程的状态为并做处理 通常与interrupted()、isinterrupted()配合使用从而达到停止一个线程。 interrupted()、isinterrupted()都是监视当前线程的中断状态当这两个方法返回的中断状态为true可以使用return或者抛出异常来结束线程方法。 代码示例如下 public class IsinterruptedTest {public static void main(String[] args) {Runnable runnable () -{Thread thisThread Thread.currentThread();int num 0;while (true){// 检查当前中断标志是否为trueif (thisThread.isInterrupted()){System.out.println(当前线程任务已被中断....);return;}System.out.println(num);}};Thread thread new Thread(runnable);// 启动线程thread.start();// 让主线程休眠2ms之后再去中断子线程try {Thread.sleep(2);} catch (InterruptedException e) {e.printStackTrace();}// 中断子线程thread.interrupt();} }interrupted、isinterrupted的区别为何stop()和suspend()方法不推荐使用 stop方法 stop()是立即终止一个线程并立刻释放被它锁住的所有对象的锁。当线程执行到一般时突然被终止后可能会导致资源没有被正确释放也会导致数据损坏、数据不一致的问题。如一个线程任务中做了两件事增加订单、减少库存而这时线程执行一半就被强制终止了就导致订单增加了库存却没有减少出现数据不一致问题。 需要注意的是通过stop()终止线程finally代码块中的代码也不会被执行finally代码块通常用于资源的释放或者清理操作所以会导致资源没有被正确释放。 suspend()作用是挂起/暂停某个线程直到调用resume方法来恢复该线程但是调用了suspend方法后并不会释放线程获取到的锁容易造成死锁。 线程的几种状态 sleep方法放弃cpu使用权使当前线程暂停一段时间当前暂停时间结束后会重新进入就绪状态并与其它线程等待cpu调度。sleep()会释放cpu资源但是不会释放同步锁(类锁、对象锁) yield方法与sleep方法相似暂停线程放弃cpu使用权并马上进入就绪状态等待cpu调度。不会释放同步锁(类锁、同步锁)需要注意的是yield方法可能会不起作用因为cpu调度是不可控制我们无法控制cpu去调用指定的线程所以可能会导致出现当前线程调用了yield()放弃cpu使用权进入就绪状态后cpu下次调用的线程还是当前线程。 Java中join()方法原理及使用教程 锁池与等待池的区别 每个对象都有一个同步锁/内置锁(互斥锁)同时也会锁池和等待池 锁池是用来存放那些想要获取对象锁但是还没有拿到锁的线程。当拿到锁资源后线程会进入就绪状态。 等待池存放的是那些主动释放(wait)锁去成全其它线程的线程。当等待池中的某一个线程被notfy、notfyall方法唤醒后会进入锁池重新争夺锁之后再从中断处继续执行任务。 wait方法 与 notify方法
http://www.hkea.cn/news/14526043/

相关文章:

  • 黑龙江住房和城乡建设部网站无经验能做sem专员
  • 网站制作网页淄博机关建设网站
  • 开发网站用什么语言最好吗做网站投广告攻略
  • 医院行业网站建设资格执业注册中心网站
  • 微信免费做邀请函模版网站设计师用什么软件设计效果图
  • 湖北seo网站设计万维网注册域名后怎么导入网站
  • 怎样用织梦做网站雅茂道网站建设
  • 怎么做一种网站为别人宣传论文网站建设方案
  • 企业网站建设流程介绍淄博网络运营公司
  • 小米盒子做网站美术网站建设方案
  • dede视频网站模板备案 网站负责人 法人
  • 给人做网站网站犯法嘛永久域名注册多少钱
  • 苏州营销型网站开发公司wordpress发布文章提示失败
  • 专业网站建设是哪家便宜wordpress实现圈子功能
  • 吉林省住房城乡建设厅网站苏州市建设局网站首页
  • 镇江网站关键字优化机构吐鲁番建设局网站
  • 公总号开发就是网站开发吗返利的网站怎么做
  • 江苏省网站备案查询网站开发 0755
  • 门户网站建设中标结果WordPress导航类主题主题
  • 信息技术做网站国外的电商网站有哪些方面
  • 视频网站软件有哪些免费域名怎么弄
  • 多国语言 网站源码如需手机网站建设
  • 网站流量查询平台少儿编程加盟品牌哪家好
  • 做网站空间多大安徽大学最近消息
  • 如何将自己做的网站上传以前在线做预算的网站
  • 酒店网站建设公司中国山东建设监理协会网站
  • 东莞横沥网站设计广告设计制作服务方案
  • dedecms导入网站模板下载html指什么
  • 银行收取网站建设费的会计科目ui设计软件sketch
  • jsp网站建设作业wordpress所有缩略图