Java的编译期优化与运行期优化介绍

java编译期优化 java语言的编译期其实是一段不确定的操作过程,因为它可以分为三类编译过程: 1.前端编译:把_.java文件转变为_.class文件 2.后端编译:把字节码转变为机器码 3.静态提前编译:直接把*.java文件编译成本地机器代码…

hello hello 发布于 2024-08-23

JVM类加载机制介绍

一.目标: 1.什么是类的加载? 2.类的生命周期? 3.类加载器是什么? 4.双亲委派机制是什么? 二.原理 (类的加载过程及其最终产品): JVM将class文件字节码文件加载到内存中, 并将这些静态数据转换成方法区中的运行时数据结构,在堆(并不一定在堆中,HotSpot在方法区中)中生成一个代表这个类的java.lang.Class…

hello hello 发布于 2024-08-22

JNDI,OSGI,Tomcat类加载器实现介绍

JNDI JNDI是 Java 命名与文件夹接口(Java Naming and Directory Interface),在J2EE规范中是重要的规范之中的一个,不少专家觉得,没有透彻理解JNDI的意义和作用,就没有真正掌握J2EE特别是EJB的知识。 那么,JNDI究竟起什么作用?带着问题看文章是最有效的…

hello hello 发布于 2024-08-22

虚拟机字节码执行引擎介绍

1 概述 执行引擎是java虚拟机最核心的组成部件之一。虚拟机的执行引擎由自己实现,所以可以自行定制指令集与执行引擎的结构体系,并且能够执行那些不被硬件直接支持的指令集格式。 所有的Java虚拟机的执行引擎都是一致的: 输入的是字节码文件,处理过程是字节码解析的等效过程,输出的是执行结果 。本节将主要从概念模型的角度来讲解 虚拟机的方法调用和字节码执行 。…

hello hello 发布于 2024-08-22
hello hello 发布于 2024-08-21

JVM垃圾回收基本原理和算法介绍

JVM GC基本原理与GC算法 Java的内存分配与回收全部由JVM垃圾回收进程自动完成。与C语言不同,Java开发者不需要自己编写代码实现垃圾回收。这是Java深受大家欢迎的众多特性之一,能够帮助程序员更好地编写Java程序。 首先会解释基本的术语,比如JDK、JVM、JRE和HotSpotVM。接着会介绍JVM结构和Java…

hello hello 发布于 2024-08-21

垃圾回收器介绍

1 概述 首先所需要考虑: 那些垃圾需要回收? 什么时候回收? 如何回收? 当需要排查各种 内存溢出问题、当垃圾收集称为系统达到更高并发的瓶颈时,我们就需要对这些“自动化”的技术实施必要的监控和调节。 2 对象已经死亡? 堆中几乎放着所有的对象实例,对堆垃圾回收前的第一步就是要判断那些对象已经死亡(即不能再被任何途径使用的对象) 2.1引用计数法…

hello hello 发布于 2024-08-21

「重构:改善既有代码的设计」实战篇

背景 在软件开发的世界里,代码重构是提升项目质量、适应业务变化的关键步骤。最近,我重新翻阅了《 重构:改善既有代码的设计 第二版 》,这本书不仅重新点燃了我对重构的热情,还深化了我的理解:重构不仅仅是代码层面的整理,它更是一种软件开发的哲学,强调持续改进和适应变化的重要性。 书中通过详细的案例分析和代码示例,将理论与实践巧妙地融合在一起。我尤其赞赏作者…

hello hello 发布于 2024-08-21

玩转 @Async 注解

引言 在现代的Web应用程序中,异步处理已经成为提升用户体验和提高系统性能的关键技术之一。随着用户数量的增长以及业务逻辑的复杂化,传统的同步处理方式往往会导致应用程序的响应速度降低,尤其是在处理耗时较长的任务时。为了解决这一问题,Spring Boot提供了一种简单而强大的机制—— @Async…

hello hello 发布于 2024-08-21

Java 里的 Optional 魔法:拿捏空值,yyds!

在 Java 编程的世界里,处理空值一直是一个需要谨慎对待的问题。空指针异常常常让开发者感到头疼,不仅影响程序的稳定性,还可能导致难以排查的错误。而 Java 中的 Optional 类的出现,为我们提供了一种更优雅、更安全的空值处理方式。 在实际的开发中,正确且高效地运用 Optional…

hello hello 发布于 2024-08-21
上一页 下一页