java进阶知识点

java回收机制

浅谈java中的反射

依赖注入的简单理解

通过接口的引用和构造方法的表达,将一些事情整好了反过来传给需要用到的地方~

这样做得好处:做到了单一职责,并且提高了复用性,解耦了之后,任你如何实现,使用接口的引用调用的方法,永远不需要改变

String为什么要设计成不可变的?

首先,String类是用final关键字修饰,这说明String不可继承。

其次,String类的主力成员字段value是个char[]数组,而且是用final修饰的。final修饰的字段创建以后就不可改变

优势:多线程安全性

类加载中体现的安全性

使用常量池节省空间

不可变对象天生就是线程安全的

缺点:会制造大量垃圾,由于他们不能被重用而且对于它们的使用就是"用"然后"扔",字符串就是一个典型的例子,它会创造很多的垃圾,给垃圾收集带来很大的麻烦。当然这只是个极端的例子,合理的使用不可变对象会创造很大的价值。

相关推荐
froginwe119 小时前
Python3与MySQL的连接:使用mysql-connector
开发语言
rannn_1119 小时前
【苍穹外卖|Day4】套餐页面开发(新增套餐、分页查询、删除套餐、修改套餐、起售停售)
java·spring boot·后端·学习
杜子不疼.9 小时前
PyPTO:面向NPU的高效并行张量编程范式
开发语言
qq_12498707539 小时前
基于JavaWeb的大学生房屋租赁系统(源码+论文+部署+安装)
java·数据库·人工智能·spring boot·计算机视觉·毕业设计·计算机毕业设计
lly2024069 小时前
C# 结构体(Struct)
开发语言
短剑重铸之日10 小时前
《设计模式》第十一篇:总结
java·后端·设计模式·总结
YMWM_10 小时前
python3继承使用
开发语言·python
Once_day10 小时前
C++之《程序员自我修养》读书总结(1)
c语言·开发语言·c++·程序员自我修养
若鱼191910 小时前
SpringBoot4.0新特性-Observability让生产环境更易于观测
java·spring