这里是参考B站上的大佬做的面试题笔记.大家也可以去看视频讲解!!! 文章目录 31.线程池复用的原理 32.spring是什么? 33.对Aop的理解 34.对IOC的理解 35.BeanFactory和ApplicationContext有什么什么区别? 36.简述spring bean的生命周期 37.spring支持的几种bean作用域 38.Spring框架中的单例Bean是线程安全的吗 39.spring框架中使用了哪些设计模式及应用场景 40.spring事务的实现方式原理以及隔离级…
http://cuisuqiang.iteye.com/blog/2019372 Java通过Executors提供四种线程池,分别为:newCachedThreadPool创建一个可缓存线程池,如果线程池长度超过处理需要,可灵活回收空闲线程,若无可回收,则新建线程.newFixedThreadPool 创建一个定长线程池,可控制线程最大并发数,超出的线程会在队列中等待.newScheduledThreadPool 创建一个定长线程池,支持定时及周期性任务执行.newSingleThreadEx…
参考文档 线程池任务执行全过程:https://blog.csdn.net/wojiaolinaaa/article/details/51345789 线程池中断:https://www.cnblogs.com/trust-freedom/p/6693601.html 为什么要使用线程池 线程是一个操作系统概念.操作系统负责这个线程的创建.挂起.运行.阻塞和终结操作.而操作系统创建线程.切换线程状态.终结线程都要进行CPU调度——这是一个耗费时间和系统资源的事情. 另一方面,大多数实际场景中是这…
java预定义的哪四种线程池? newSingleThreadExexcutor:单线程数的线程池(核心线程数=最大线程数=1) newFixedThreadPool:固定线程数的线程池(核心线程数=最大线程数=自定义) newCacheThreadPool:可缓存的线程池(核心线程数=0,最大线程数=Integer.MAX_VALUE) newScheduledThreadPool:支持定时或周期任务的线程池(核心线程数=自定义,最大线程数=Integer.MAX_VALUE) 四种线程池有什…
这里是参考B站上的大佬做的面试题笔记.大家也可以去看视频讲解!!! 文章目录 11.HashMap和HashTable的区别及底层实现 12.ConcurrentHashMap原理简述,jdk7和jdk8的区别 13.如何实现一个IOC容器 14.什么是字节码,作用是什么 15.java类加载器有哪些 16.双亲委派模型 17.java中的异常体系 18.GC如何判断对象可以被回收 19.线程的生命周期及状态 20.sleep.wait.join.yield的区别 11.HashMap和Hash…
这里是参考B站上的大佬做的面试题笔记.大家也可以去看视频讲解!!! 文章目录 21.对线程安全的理解 22.Thread和Runnable的区别 23.说说你对守护线程的理解 24.ThreadLocal的原理和使用场景 25.ThreadLocal内存泄漏问题,如何避免 26.并发.并行.串行 27.并发三大特性 28.为什么使用线程池?解释下线程池解释? 29.线程池处理流程 30.线程池中阻塞队列的作用?为什么是先添加队列而不是先创建最大线程? 21.对线程安全的理解 不是线程安全.应该是…
这里是参考B站上的大佬做的面试题笔记.大家也可以去看视频讲解!!! 文章目录 41.spring的事务传播机制 42 .spring事务什么时候会失效 43 .什么的是bean的自动装配.有哪些方式? 44 .spring . springmvc .springboot的区别 45 .springmvc的工作流程 46 .Spring MVC的主要组件 47 .springboot自动配置原理 48 . 如何理解springboot的starter 49 . 什么是嵌入式服务器,为什么使用嵌入式…
在Java中使用线程池,可以用ThreadPoolExecutor的构造函数直接创建出线程池实例,如何使用参见之前的文章Java线程池构造参数详解.不过,在Executors类中,为我们提供了常用线程池的创建方法.接下来我们就来了解常用的四种: newFixedThreadPool 首先,看一下这种线程池的创建方法: public static ExecutorService newFixedThreadPool(int nThreads) { return new ThreadPoolExec…
这里是参考B站上的大佬做的面试题笔记.大家也可以去看视频讲解!!! 文章目录 1.面向对象 2.JDK.JRE.JVM区别和联系 3.==和equals 4.final 5.String .StringBuffer.StringBuilder区别及使用场景 6.重载和重写的区别 7.接口和抽象类 8.List和Set 9.hashcode和equals 10.ArrayList和Linkedlist 1.面向对象 1.1. 什么是面向对象? 对比面向过程.是两种不同的处理问题的角度 面向过程更注…
介绍new Thread的弊端及Java四种线程池的使用,对Android同样适用.本文是基础篇,后面会分享下线程池一些高级功能. 1.new Thread的弊端执行一个异步任务你还只是如下new Thread吗? new Thread(new Runnable() { @Override public void run() { // TODO Auto-generated method stub } }).start(); 那你就out太多了,new Thread的弊端如下: a. 每次new…