晚上翻 林昊 写的 <<分布式java应用>>,感觉很精辟。 还没系统看,刚刚看了下java内存模型这一块,做点笔记:)
首先为了跨系统的特性,java中是没有寄存器的。
然后分析一下jvm是怎么瓜分内存的~
线程栈(书中的jvm内存栈):线程私有的运行时的方法栈
jvm 堆: java用来存放对象的地方。根据对象的生命周期长短以及为了根据不同垃圾回收算法的特性取得更大性能,
划分为: Eden,S0,S1,Old
java永久内存区:存放加载的类的信息(名称,修饰符,field信息,method信息),类中的静态常量, 类中
final类型的常量(注意:是常量。如果是一个Reference,哪怕是Integer的Reference也不包括在内。)
这根final的定义有关系:
禁止再次赋值。
也就是说,如果是一个Reference,那么即使指向的对象里面的内容变了,只要不指向另一个对象,
就不违背fina的语义。而常量就不一样了:final之后就再也不能变化了。所以final 常量可以放在永久区
而final reference不可以。
另外:java中的字符串常量池也放在这里面。
分享到:
相关推荐
Java是目前企业开发中最常用的编程语言之一,Java面试知识点涵盖了Java语言的方方面面,包括Java基础知识、Java高级知识、Java设计模式、Java框架等等。以下是Java核心面试知识点的整理。 一、JVM JVM(Java ...
这个项目旨在通过构建一个经典的坦克大战游戏,将Java中的主要知识点串联起来,让你逐步掌握编程技能。下面我们将详细探讨在这个过程中会涉及到的知识点。 首先,基础语法是学习任何编程语言的起点。在Java中,你...
"Java高级知识点详解系列"聚焦于几个核心领域:Java内存管理、泛型以及反射。这些概念在实际开发中至关重要,理解它们能够帮助开发者写出更高效、更灵活且更易于维护的代码。 1. **Java内存**:Java内存主要涉及堆...
### Java重要知识点总结 #### 1. Java是一种编译解释型的语言 Java 语言的特点是它结合了编译型语言的高效性和解释型语言的灵活性。在开发阶段,Java 源代码首先被编译器转换成字节码(Bytecode),这是一种中间...
JAVA面试核心知识点整理 本文档旨在为Java开发者提供一个 hệ thống的面试知识点整理,涵盖了Java的核心概念、JVM的工作原理、Java编程语言的基本语法和高级特性等多方面的知识点。下面是对该文档的详细解读。 ...
以下是对Java相关知识点的详细总结: 1. **基础语法**:Java的基础包括变量、数据类型(基本类型如int、char,引用类型如类、接口)、运算符(算术、比较、逻辑等)、流程控制(条件语句if/else,循环语句for/while...
Java内存模型是Java虚拟机规范中定义的一部分,它规定了Java程序中变量的读写行为,以及线程之间的交互规则。理解Java内存模型对于编写正确、高效的多线程程序至关重要。在Java 5之前,Java内存模型的描述比较模糊,...
java面试各大知识点,非常齐全。jvm内存分区,gc算法,类加载机制。并发编程,并发编程各大容器,锁。框架spring mybatis原理,组件介绍。架构设计有设计模式,负载均衡。网络有协议,java 高并发io框架netty。数据...
Java是一种广泛使用的面向对象编程语言,其核心特性之一就是多态性。多态性赋予了Java代码灵活性和可扩展性,使得程序可以处理多种不同类型的对象而无需知道具体...在实际开发中,这些知识点是Java程序员必备的基础。
Java 面向对象基础知识点 Java 是一门面向对象的编程语言,面向对象编程(Object-Oriented Programming,OOP)是 Java 语言的核心。了解 Java 面向对象的基础知识是掌握 Java 语言的关键,本文将对 Java 面向对象的...
以上是Java面试中常见的JVM和内存管理相关的知识点,对于Java开发者来说,理解和掌握这些概念是基础,也是提升职业竞争力的关键。在实际面试中,面试官可能会深入询问这些话题,例如垃圾收集的工作机制、内存泄漏的...
《JAVA核心知识点总结》 Java作为一款广泛应用的编程语言,其核心知识点对于开发者来说至关重要。本资料旨在为准备面试或者系统学习Java的人员提供一个全面的复习框架。以下是对其中部分关键知识点的详细阐述: **...
在深入理解Java内存模型之前,我们需要先了解并发编程模型的分类,然后掌握Java内存模型的基础知识,理解重排序和顺序一致性,以及volatile关键字的相关知识点。 首先,让我们探讨Java内存模型的基础知识。在并发...
"JAVA核心知识点整理.zip"这个压缩包文件包含了对Java进阶学习的重要知识点的详细概述,主要集中在PDF文档"JAVA核心知识点整理.pdf"中。以下是这份资料可能涵盖的主要内容: 1. **Java基础**:首先,你会学到Java的...
以上知识点在"JAVA知识点总结思维导图(xmind)"中可能以思维导图的形式详细展开,包括每个主题的子话题和相关实例,帮助学习者系统地理解和掌握Java编程。通过深入学习和实践这些知识点,可以成为一名熟练的Java...
Java内存管理是Java编程中的核心概念,它涉及到程序运行时数据的存储、分配以及回收。在Java中,内存主要分为堆内存(Heap)和栈内存(Stack),还有方法区(Method Area...对于Java开发者来说,这些都是必备的知识点。
目录清晰地列出了JAVA的知识结构,包括JVM、线程、JVM内存区域、JVM运行时内存等重要知识点。 JVM JVM(Java Virtual Machine)是JAVA的核心组件之一,负责将JAVA字节码转换为机器码并执行。JVM是JAVA的运行环境...
以下是对这些知识点的详细说明: 一、Java概述: Java是由Sun Microsystems开发的一种跨平台的编程语言,它具有“一次编写,到处运行”的特性,通过Java虚拟机(JVM)实现平台无关性。Java有丰富的类库支持,适用于...
本文将对Java内存模型进行知识汇总,帮助读者更好地理解和掌握相关知识点。 首先,内存模型的概念是与计算机硬件密切相关的。计算机执行程序时,CPU执行指令并需要频繁地与数据进行交互,而这些数据存储在主存(即...