![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
面试题
文章平均质量分 81
络粉
这个作者很懒,什么都没留下…
展开
-
并发面试题
在new Thread()时线程就进入到新建状态,在执行start()就进入到就绪状态等待分配时间片,分配到时间片后就进入到运行状态,当线程在等待获取锁的时候进入阻塞状态,执行wait()/sleep()方法就进入到等待状态但run()执行完了就进入到死亡状态。如果当前线程数大于核心线程数,则判断任务队列是否满了如果没满直接加入到任务队列如果满了就会判断当前线程数是否小于最大线程数如果小于最大线程数就直接创建线程如果大于最大线程数就会执行拒绝策略。这个信号量就是用来入队和出队的线程队列就是用来排队的。原创 2024-08-29 23:23:25 · 327 阅读 · 0 评论 -
Spring的面试题
然后再就是使用Bean,最后就是销毁bean。在Spring中通过三级缓存来解决循环依赖,假如a和b发生循环依赖,a实例化后就会放到缓存中,当a注入b的bean,b进行实例化需要注入A的bean这时就会从缓存中获取A实例化后的bean,当b的bean创建完成后,a从缓存中获取b的bean完成属性注入和初始化。在单例bean中是非线程安全的单例bean每个线程共享同一个bean,可以将bean中定义成一个不可变的成员变量,或者将单例bean转为原型bean或者使用ThreaLocal来将变量存储起来。原创 2024-08-27 23:21:50 · 578 阅读 · 0 评论 -
集合常见的面试题
首先会确定数组是否为空,若为空就进行初始化大小为16的数组若不为空通过key计算hash值根据hash值计算数组下标,然后判断该数组下标是否有值,如果有值判断key是否相等相等的话进行覆盖,不相等的话判断当前节点是否为红黑树,如果为红黑树转为红黑树节点直接插入,如果为链表遍历链表判断key是否有相等的有的话就直接覆盖没有则在链表尾部插入当链表长度大于8并且数组长度大于64就会转为红黑树。HashMap在1.7是通过数组+链表来实现的,在1.8的时候使用数组+链表+红黑树来实现的。原创 2024-08-26 12:29:50 · 289 阅读 · 0 评论 -
Java基础面试题
反射就是在运行过程中可以获取到类的属性和方法,反射就是将类中的属性方法封装成对象20. 有哪些方式可以获取class对象1.通过类名.class()21.Collection 和 Collections 有什么区别?Collection是最基本的集合接口下面有两个接口list和set。list他是有序可重复,set是无序不可重复的Collections:是集合的一个工具类22.JDK8有哪些新特性1.Lambda表达式2. Stream流3. 接口的默认的方法4.引入Optional。原创 2024-08-25 21:36:22 · 456 阅读 · 0 评论