java进阶知识点

java回收机制

浅谈java中的反射

依赖注入的简单理解

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

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

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

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

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

优势:多线程安全性

类加载中体现的安全性

使用常量池节省空间

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

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

相关推荐
Qlittleboy4 小时前
PHP的接口参数传递的过多,max_input_vars = 5000
开发语言·php
Aurorar0rua5 小时前
CS50 x 2024 Notes Algorithms - 02
c语言·开发语言·学习方法
sun03225 小时前
【笔记】Spring MVC 相关介绍
java·spring·mvc
en.en..5 小时前
冒泡排序与选择排序完整对比解析
开发语言·数据结构·算法·c#·排序算法
兰令水5 小时前
hot100【acm版】【2026.7.18打卡-java版本】
java·开发语言·算法
cui_ruicheng5 小时前
Python从入门到实战(十三):模块、包与环境管理
开发语言·python
就叫飞六吧5 小时前
子页面和dialog案例
开发语言·javascript·ecmascript
CoderYanger5 小时前
A.每日一题:3020. 子集中元素的最大数量
java·程序人生·算法·leetcode·面试·职场和发展·学习方法
wear工程师6 小时前
CompletableFuture 的 allOf 到底怎么收结果?面试别只说并行
java·后端
倒流时光三十年6 小时前
Logback 系列(3):三大核心组件 Logger / Appender / Encoder
java·开发语言·logback