Java SPI 介绍

面向对象设计鼓励模块间基于接口而非具体实现编程,以降低模块间的耦合,遵循依赖倒置原则,并支持开闭原则(对扩展开放,对修改封闭)。然而,直接依赖具体实现会导致在替换实现时需要修改代码,违背了开闭原则。为了解决这个问题,SPI…

hello hello 发布于 2024-11-08

Java Syntactic Sugar 介绍

本文从 Java 编译原理角度,深入字节码及 class 文件,抽丝剥茧,了解 Java 中的语法糖原理及用法,帮助大家在学会如何使用 Java 语法糖的同时,了解这些语法糖背后的原理。 什么是语法糖? 语法糖(Syntactic Sugar) 也称糖衣语法,是英国计算机学家 Peter.J.Landin…

hello hello 发布于 2024-11-08

Java 魔法类 Unsafe 介绍(二)

对象操作 介绍 例子 import sun.misc.Unsafe; import java.lang.reflect.Field; public class Main { private int value; public static void main(String[] args) throws Exception{ Unsafe unsafe =…

hello hello 发布于 2024-11-08

Java 值传递介绍

开始之前,我们先来搞懂下面这两个概念: 形参&实参 值传递&引用传递 形参&实参 方法的定义可能会用到 参数 (有参的方法),参数在程序语言中分为: 实参(实际参数,Arguments) :用于传递给函数/方法的参数,必须有确定的值。 形参(形式参数,Parameters) :用于定义函数/方法,接收实参,不需要有确定的值。 String hello =…

hello hello 发布于 2024-11-08

Java 魔法类 Unsafe 介绍(一)

阅读过 JUC 源码的同学,一定会发现很多并发工具类都调用了一个叫做 Unsafe 的类。 那这个类主要是用来干什么的呢?有什么使用场景呢?这篇文章就带你搞清楚! Unsafe 介绍 Unsafe 是位于 sun.misc 包下的一个类,主要提供一些用于执行低级别、不安全操作的方法,如直接访问系统内存资源、自主管理内存资源等,这些方法在提升 Java…

hello hello 发布于 2024-11-08

Java 代理模式介绍

1. 代理模式 代理模式是一种比较好理解的设计模式。简单来说就是 我们使用代理对象来代替对真实对象(real object)的访问,这样就可以在不修改原目标对象的前提下,提供额外的功能操作,扩展目标对象的功能。 代理模式的主要作用是扩展目标对象的功能,比如说在目标对象的某个方法执行前后你可以增加一些自定义的操作。…

hello hello 发布于 2024-11-05

Java Reflection 介绍

何为反射? 如果说大家研究过框架的底层原理或者咱们自己写过框架的话,一定对反射这个概念不陌生。 反射之所以被称为框架的灵魂,主要是因为它赋予了我们在运行时分析类以及执行类中方法的能力。 通过反射你可以获取任意一个类的所有属性和方法,你还可以调用这些方法和属性。 反射的应用场景了解么?…

hello hello 发布于 2024-11-05

Java Serialization 介绍

什么是序列化和反序列化? 如果我们需要持久化 Java 对象比如将 Java 对象保存在文件中,或者在网络传输 Java 对象,这些场景都需要用到序列化。 简单来说: 序列化 :将数据结构或对象转换成可以存储或传输的形式,通常是二进制字节流,也可以是 JSON, XML 等文本格式 反序列化 :将在序列化过程中所生成的数据转换为原始数据结构或者对象的过程…

hello hello 发布于 2024-11-05

Java 关键字总结

final 关键字 final 关键字,意思是最终的、不可修改的,最见不得变化 ,用来修饰类、方法和变量,具有以下特点: final 修饰的类不能被继承,final 类中的所有成员方法都会被隐式的指定为 final 方法; final 修饰的方法不能被重写; final…

hello hello 发布于 2024-11-05

Java BigDecimal 介绍

前言 阿里巴巴 Java 开发手册》中提到:“为了避免精度丢失,可以使用 BigDecimal 来进行浮点数的运算”。 浮点数的运算竟然还会有精度丢失的风险吗?确实会! 示例代码: float a = 2.0f - 1.9f; float b = 1.8f - 1.7f; System.out.println(a);// 0.100000024…

hello hello 发布于 2024-11-05
上一页 下一页