课程大纲
学习路线规划
技术篇
行业资讯
pmp
软考
sleep()与 wait()的区别 sleep()是Thread类方法,而wait()是Object类方法 sleep()用于暂停当前正在执行的线程,不会释放对象锁 wait()用于使线程进入等待状态,会释放对象锁,并且 ...详情>>
Java线程有哪些状态 新建(New):线程被创建,但还没有调用start()方法 运行(Runnable):就绪或者运行中 阻塞(Blocked):表示线程阻塞,等待获取锁 等待(Waiting):表示线程调用了wait方法,需要 ...详情>>
线程的run()和start()有什么区别 start()方法用于启动一个新线程,并异步执行线程的任务 run()方法是线程的任务处理入口,会在当前线程中同步执行 start()方法只能调用一次,而r ...详情>>
创建线程有哪几种方式 继承Thread类,重写该类的run()方法 实现Runnable接口,重写该接口的run()方法 实现Callable接口通过FutureTask包装器来创建线程 ...详情>>
并发和并行的区别 并发:一个处理器同时处理多个任务,CPU通过时间片切换轮流执行不同的任务。 并行:多个处理器或者是多核的处理器同时处理多个不同的任务,两个线程互不抢占CPU ...详情>>
HashMap 与LinkedHashMap 的区别 继承关系:LinkedHashMap 是 HashMap 的子类,继承了 HashMap 的基本功能,并在此基础上增加了维护插入顺序的功能。 元素顺序:HashMap 不保证元 ...详情>>
HashMap和HashTable有什么区别? 线程安全性:HashTable 是线程安全的,而 HashMap 不是。 Null 值:HashMap 允许键和值都为 null,而 HashTable 不允许键或值为 null。 继承关系:Has ...详情>>
HashSet 的底层数据结构? 基于HashMap实现。public HashSet() { map = new HashMap<>();} 值存放于HashMap的key上。public boolean add(E e) { return map.put(e, PR ...详情>>
HashMap的底层数据结构JDK<=1.7:数组+链表;JDK>=1.8:数组+链表+红黑树;数组:时间复杂度是O(1);链表:时间复杂度是O(N);红黑树:时间复杂度是O(logn);Hash值产生碰撞后,链表长度>8时会从 ...详情>>
ArrayList和LinkedList有什么区别? ArrayList LinkedList 底层数据结构 使用数组实现 使用链表实现 插入和删除操作 ...详情>>
如何在Java中实现生产者-消费者模式的高效版本?
什么是Java中的ThreadPoolExecutor,它的工作原理是什么?
如何在Java中使用CountDownLatch实现线程同步?
解释Java中的Fork/Join框架的使用场景
如何在Java中实现线程安全的单例模式(Bill Pugh Singleton)?
如何在Java中实现深拷贝(Deep Copy)?
2024-10-31
2024-10-06
2024-09-13
2024-08-01
2025-01-02