深入理解 JVM(一)Java的内存区域

JVM 作为 Java 学习的核心概念,承载了 Java,compile once run everywhere 的理念。理解 JVM 是每一个 Java DEV 的必修课。
Java 的虚拟机会在执行 Java 程序的过程中,把其所管理的内存划分为若干不同的数据区域。在本篇文章中,通过对《深入理解Java虚拟机 JVM高级特性与最佳实践》一书的阅读,做以下知识点的梳理与总结。

阅读更多

探索 Java 中 String 的本质,从 char 说起

String 类可以认为是 Java 语言中最为常用的类了,对于 String 的理解更是 Java 面试题的常客。
但作为一个 Java 程序员,对于 String 是否足够了解了呢?
本篇文章将对 String的存储,使用做一个详细的探讨。


先来简单介绍下 StringString是 JDK 提供的位于 java.lang 中的基础类,但区别于 byte,short,int,long,char,boolean,float,double这些基本类型,String不是基本数据类型,而是一个类。
因为是类,实例化的String 对象的空值为 null,但String是如此常用,于是 JDK 对其有特殊的优化。

阅读更多