Study notes
09
25
Java集合使用注意事项总结 Java集合使用注意事项总结
这篇文章我根据《阿里巴巴 Java 开发手册》总结了关于集合使用常见的注意事项以及其具体原理。 强烈建议小伙伴们多多阅读几遍,避免自己写代码的时候出现这些低级的问题。 集合判空《阿里巴巴 Java 开发手册》的描述如下: 判断所有集合内部
2024-09-25
25
Java集合常见知识总结(下) Java集合常见知识总结(下)
Map(重要)HashMap 和 Hashtable 的区别 线程是否安全: HashMap 是非线程安全的,Hashtable 是线程安全的,因为 Hashtable 内部的方法基本都经过synchronized 修饰。(如果你要保证线程
2024-09-25
25
Java集合常见知识总结(上) Java集合常见知识总结(上)
集合概述Java 集合概览Java 集合,也叫作容器,主要是由两大接口派生而来:一个是 Collection接口,主要用于存放单一元素;另一个是 Map 接口,主要用于存放键值对。对于Collection 接口,下面又有三个主要的子接口:L
2024-09-25
25
Java 语法糖详解 Java 语法糖详解
语法糖是大厂 Java 面试常问的一个知识点。 本文从 Java 编译原理角度,深入字节码及 class 文件,抽丝剥茧,了解 Java 中的语法糖原理及用法,帮助大家在学会如何使用 Java 语法糖的同时,了解这些语法糖背后的原理。 什么
2024-09-25
25
Java SPI 机制详解 Java SPI 机制详解
面向对象设计鼓励模块间基于接口而非具体实现编程,以降低模块间的耦合,遵循依赖倒置原则,并支持开闭原则(对扩展开放,对修改封闭)。然而,直接依赖具体实现会导致在替换实现时需要修改代码,违背了开闭原则。为了解决这个问题,SPI 应运而生,它提供
2024-09-25
25
BigDecimal 详解 BigDecimal 详解
《阿里巴巴 Java 开发手册》中提到:“为了避免精度丢失,可以使用 BigDecimal 来进行浮点数的运算”。 浮点数的运算竟然还会有精度丢失的风险吗?确实会! 示例代码: 12345float a = 2.0f - 1.9f;floa
2024-09-25
25
Java 代理模式详解 Java 代理模式详解
1. 代理模式代理模式是一种比较好理解的设计模式。简单来说就是 我们使用代理对象来代替对真实对象(real object)的访问,这样就可以在不修改原目标对象的前提下,提供额外的功能操作,扩展目标对象的功能。 代理模式的主要作用是扩展目标对
2024-09-25
25
Java 反射机制详解 Java 反射机制详解
何为反射?如果说大家研究过框架的底层原理或者咱们自己写过框架的话,一定对反射这个概念不陌生。 反射之所以被称为框架的灵魂,主要是因为它赋予了我们在运行时分析类以及执行类中方法的能力。 通过反射你可以获取任意一个类的所有属性和方法,你还可以调
2024-09-25
25
Java 序列化详解 Java 序列化详解
什么是序列化和反序列化?如果我们需要持久化 Java 对象比如将 Java 对象保存在文件中,或者在网络传输 Java 对象,这些场景都需要用到序列化。 简单来说: 序列化:将数据结构或对象转换成可以存储或传输的形式,通常是二进制字节流,
2024-09-25
1 / 11