前言
为什么要读Spring源码,有的人为了学习Spring中的先进思想,也有的人是为了更好的理解设计模式,当然也有很大一部分小伙伴是为了应付面试,Spring Bean的生命周期啦,Spring AOP的原理啦,Spring IoC的原理啦,应付面试,看几篇博客,对照着看看源码,应该就没什么问题了,但是如果想真正的玩懂Spring,需要花的时间真的很多,需要你沉下心,从最基础
点击领取2024完整开源项目《一线大厂Java面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义》
的看起,今天我们就来看看Spring中的基础——BeanDefinition。
专题5:Java序列化
-
1、什么是java序列化,如何实现java序列化?
-
2、保存(持久化)对象及其状态到内存或者磁盘
-
3、序列化对象以字节数组保持-静态成员不保存
-
4、序列化用户远程对象传输
-
5、Serializable 实现序列化
-
6、writeObject 和 readObject 自定义序列化策略
-
7、序列化 ID
-
8、序列化并不保存静态变量
-
9、Transient 关键字阻止该变量被序列化到文件中
-
10、序列化(深 clone 一中实现)
专题6:Java注解
-
1、4种标准元注解是哪四种?
-
2、注解是什么?
专题7:多线程&并发
-
1、Java中实现多线程有几种方法
-
2、继承 Thread 类
-
3、实现 Runnable 接口。
-
4、ExecutorService、 Callable、 Future 有返回值线程
-
5、基于线程池的方式
-
6、4 种线程池
-
7、如何停止一个正在运行的线程
-
8、notify()和notifyAll()有什么区别?
-
9、sleep()和wait() 有什么区别?
-
10、volatile 是什么?可以保证有序性吗?
-
11、Thread 类中的start() 和 run() 方法有什么区别?
-
12、为什么wait, notify 和 notifyAll这些方法不在thread类里面?
-
13、为什么wait和notify方法要在同步块中调用?
-
14、Java中interrupted 和 isInterruptedd方法的区别?
-
15、Java中synchronized 和 ReentrantLock 有什么不同?
-
16、有三个线程T1,T2,T3,如何保证顺序执行?
-
17、SynchronizedMap和ConcurrentHashMap有什么区别?
-
18、什么是线程安全
-
19、Thread类中的yield方法有什么作用?
-
20、Java线程池中submit() 和 execute()方法有什么区别?
-
21、说一说自己对于 synchronized 关键字的了解
-
22、说说自己是怎么使用 synchronized 关键字,在项目中用到了吗synchronized关键字最主要的三种使用方式
-
23、什么是线程安全?Vector是一个线程安全类吗?
-
24、volatile关键字的作用?
-
25、简述一下你对线程池的理解
-
26、线程生命周期(状态)
-
27、新建状态(NEW)
-
28、就绪状态(RUNNABLE)
-
29、运行状态(RUNNING)
-
30、阻塞状态(BLOCKED)
-
31、线程死亡(DEAD)
-
32、终止线程 4 种方式
-
33、start 与 run 区别
-
34、JAVA 后台线程
-
35、什么是乐观锁
-
36、什么是悲观锁
-
37、什么是自旋锁
-
38、Synchroniz