首页
学习
活动
专区
工具
TVP
发布

业余草

专栏作者
563
文章
1188400
阅读量
42
订阅数
面试官:说说如何打破或违反双亲委派!
SPI的全名为Service Provider Interface,主要是应用于厂商自定义组件或插件中,在java.util.ServiceLoader的文档里有比较详细的介绍。简单的总结下java SPI机制的思想:我们系统里抽象的各个模块,往往有很多不同的实现方案,比如日志模块、xml解析模块、jdbc模块等方案。面向的对象的设计里,我们一般推荐模块之间基于接口编程,模块之间不对实现类进行硬编码。一旦代码里涉及具体的实现类,就违反了可拔插的原则,如果需要替换一种实现,就需要修改代码。为了实现在模块装配的时候能不在程序里动态指明,这就需要一种服务发现机制。Java SPI就是提供这样的一个机制:为某个接口寻找服务实现的机制。有点类似IOC的思想,就是将装配的控制权移到程序之外,在模块化设计中这个机制尤其重要。
业余草
2021-12-06
1.5K0
Java必会的工具库,让你的代码量减少90%
工作很多年后,才发现有很多工具类库,可以大大简化代码量,提升开发效率,初级开发者却不知道。而这些类库早就成为了业界标准类库,大公司的内部也都在使用,如果刚工作的时候就有人告诉我使用这些工具类库,该多好!
业余草
2021-12-06
4370
看完这篇文章再也不怕面试被问@transactional不生效的原因了
代理设计模式,用于无侵入性地增强方法功能。代理模式是指,目标类的方法执行,需要委托给代理类执行,代理类可以在执行目标方法前/后,处理一些其它事情,这样就可以起到增强目标方法的作用,例如,需要在目标方法前获取运行时间。
业余草
2020-07-16
3240
为什么 FastJson 火不起来,国外人都不使用?
首先抄录一段来自官网的介绍:FastJson是阿里巴巴的开源JSON解析库,它可以解析JSON格式的字符串,支持将Java Bean序列化为JSON字符串,也可以从JSON字符串反序列化到JavaBean。
业余草
2020-04-24
1.1K0
2020 最新整理的 50 到 Java 线程面试题!
线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位。程序员可以通过它进行多处理器编程,你可以使用多线程对运算密集型任务提速。比如,如果一个线程完成一个任务要100毫秒,那么用十个线程完成改任务只需10毫秒。Java在语言层面对多线程提供了卓越的支持,它也是一个很好的卖点。
业余草
2019-12-20
4110
设计模式系列,六大设计原则
设计模式和性能优化有没有关系?最近,我看到有人再讲性能优化的时候,讲到了“有些设计模式可以做到一定程度的性能优化”。
业余草
2019-08-14
7240
面试题:链表为什么使用内部类实现?
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/xmt1139057136/article/details/89167082
业余草
2019-05-10
7510
深入浅出LinkedHashMap原理和源码解毒
最近,我知道有好几个同学会偶尔的阅读阅读我的博客。我倍感压力,他都是 CTO 级的人物,我经常向他们取经,膜拜他们。
业余草
2019-04-25
8810
没有更多了
社区活动
腾讯技术创作狂欢月
“码”上创作 21 天,分 10000 元奖品池!
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档