面试官:谢飞机,今天我们聊聊Java相关的技术问题,从基础到框架,再到分布式,你准备好了吗?
第一轮:Java核心知识 & JUC & JVM
面试官:谢飞机,先来点简单的,谈谈Java中线程的生命周期。
谢飞机:线程的生命周期有新建、就绪、运行、阻塞、死亡这几种状态。嗯...新建就是new出来的时候,就绪是调用start方法后,等待CPU分配时间片。运行是真正执行代码的时候,阻塞可能因为等待资源或者sleep,死亡就是线程执行完了或者异常终止。
面试官:回答得不错,看来你对线程的基础知识还行。那接着问,线程池的核心参数有哪些?
谢飞机:线程池有几个核心参数,比如核心线程数、最大线程数、空闲线程存活时间、任务队列、拒绝策略等等。嗯...核心线程数是默认一直存在的线程数量,最大线程数是线程池最多能容纳的线程数,任务队列用来存放待处理的任务,拒绝策略就是当任务队列满了之后的处理方式。
面试官:嗯,看来你确实了解一些,那我们继续,JVM内存模型你知道吧?
谢飞机:JVM内存模型主要分为堆、栈、方法区、本地方法栈、程序计数器这几个部分。堆是存放对象的地方,栈是每个线程私有的,保存方法调用的局部变量等信息,方法区存储类信息、常量池、静态变量等,本地方法栈用于Native方法,程序计数器记录当前线程执行的位置。
面试官:嗯,你对JVM的理解还可以。那我们进入下一轮。
第二轮:Spring & SpringBoot & MyBatis
面试官:谢飞机,Spring中的Bean作用域有哪些?
谢飞机:Spring的Bean作用域主要有singleton、prototype、request、session、global session。singleton是默认的

最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



