1. java线程池有几种
答: Java通过Executors提供四种线程池,分别为:
newCachedThreadPool创建一个可缓存线程池,如果线程池长度超过处理需要,可灵活回收空闲线程,若无可回收,则新建线程
newFixedThreadPool创建一个定长线程池,可控制线程最大并发数,超出的线程会在队列中等待
newScheduledThreadPool创建一个定长线程池,支持定时和周期性任务执行
newSingleThreadExecutor创建一个单线程化的线程池,它只会用唯一的工作线程来执行任务,保证所有任务按照指定顺序(FIFO,LIFO,优先级)执行。
2. HashMap的原理
答: 通过key的hashcode()计算出value存储的空间。
3. Object中的hashcode()返回的是什么?
答:返回该对象所在内存地址的整数形式
4. map 的变历?
答:map提供
(1)set<key> keyset= map.keyset(),
(2) set<Entry<k,v>> entrySet= map.entryset();(将map中所有的键值对封装到Entry对象中,并放进set)
5. springboot的启动流程
(1)main
(2)加载 configration:被标注的类等于在spring的XML配置文件中(applicationContext.xml),装配所有bean事务,提供了一个spring的上下文环境
(3)组件扫描:组件扫描,可自动发现和装配Bean