面试题
kelley_luxuiary
这个作者很懒,什么都没留下…
展开
-
【面试题】高级Java 面试知识点总结
1.Hashmap底层执行原理, 在多线程里Hashmap是不安全的 存储结构:数组,链表、红黑树(jdk1.8+) 特点: 快速存储,快速查找(key-value键值对,时间复杂度O(1)),可伸缩(数组默认大小16,可扩容;单向链表超过8bit扩容成红黑树) hash算法 所有对象Object都有hashcode值。e.g String.hashCode(); hash值 ^ (hash值>>>16) 数组下标:上述算法计算的hash值 &(16-1)== hash值 %16原创 2020-07-20 21:47:02 · 172 阅读 · 0 评论 -
【Java面试题】调用yield()、sleep()、notify()、wait()等方法对锁有何影响?
yield():让出CPU的执行权,进入就绪状态,不会释放锁; sleep():线程休眠,但不会释放锁; notify():对锁无影响,线程只有在synchronized同步代码执行完成后,才会释放锁, 所以,notify系列方法一般都是在synchronized同步代码的最后一行。 wait():会释放当前线程所持有的锁,而且当被唤醒后,会重新去竞争锁,锁竞争到后才会执行wait方法后面的代码。 ...原创 2020-05-27 14:11:34 · 199 阅读 · 0 评论