摘要:
synchronized 和 ReentrantLock 的实现原理是什么?它们有什么区别? ReentrantLock 是 Lock 的默认实现方式之一,它是基于 AQS(Abstract Queued Synchronizer,队列同步器)实现的,它默认是通过非公平锁实现的,在它的内部有一个 s 阅读全文
摘要:
什么是工厂模式? 工厂模式属于创建型模式,它提供了一种创建对象的最佳方式。工厂模式关心的是最终产出(创建)的对象, 而不关心创建的过程。举个例子,好比您需要一辆汽车,可以直接从工厂里面提货,而不用去管这辆汽车是怎么做出来的,以及这个汽车里面的具体实现。 为什么要用工厂模式?(优点?) 为什么不直接用 阅读全文
摘要:
如果您对“代理模式”的知识还不清晰,可以看我的另一篇博文 -- 代理模式 ,谢谢 两种代理模式结构(两种模式的区别?): (1)静态代理 是在程序运行前就事先写好代理类,可以手工编写也可以使用工具生成,缺点是每个业务类都要对应一个代理类,特别不灵活也不方便,于是就有了动态代理。 (2)动态代理 是程 阅读全文
摘要:
谈谈你对死锁的理解? 发生场景 死锁一定发生在并发场景中。我们为了保证线程安全,有时会给程序使用各种能保证并发安全的工具,尤其是锁,但是如果在使用过程中处理不得当,就有可能会导致发生死锁的情况。 定义 死锁是指两个或两个以上的线程在执行过程中,因争夺资源而造成的互相等待的现象,在无外力作用的情况下, 阅读全文
摘要:
说说你对spring的理解? Spring框架是一个轻量级的企业级开发的一站式解决方案,所谓一站式解决方案就是可以基于Spring解决Java EE开发的所有问题。Spring框架主要提供了IoC容器、AOP、数据访问、Web开发、消息、测试等相关技术的支持。 使用Spring框架有什么好处呢? 框 阅读全文