一. 运行时栈结构 在介绍运行时栈结构之前,我们先回忆一下虚拟机运行时数据区: 本部分所讲述的运行时栈结构就是对程序运行时虚拟机栈中信息的具体描...
在Class文件描述的各种信息,最终都需要加载到虚拟机中才能运行和使用。了解虚拟机类加载机制,就需要弄懂下面两个问题: 虚拟机如何加载Class...
Java虚拟机的指令由一个字节长度的、代表着某种特定操作含义的数字(操作码,Opcode)以及跟随其后的零至多个代表此操作所需的参数(操作数,O...
在了解Java class文件结构之前,我们思考一下如下几个问题: Windows、Linux、Mac 三大平台上的可执行程序格式一样吗?如果不...
一. 什么是垃圾收集 不同于C、C++等主动申请与释放内存的语言,Java对内存的使用是动态的,回收是自动的。回收内存的动作就叫垃圾收集(Gar...
一. 运行时数据区域 Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为几个不同的数据区域,这些区域都有各自的用途,以及创建和销毁...
提起面向对象,似乎已经是一个很out的话题了,C++、Java、C#等一众面向对象语言在很多领域中获得了广泛的使用。或许你恰好就在使用某种面向对...
自动化开发部署和测试 该原则能提高可维护性的原因在于,自动化测试让开发过程可预测并且能够降低风险。 1. 原则: 对你的代码进行自动化测试 你应...
本篇主要总结《代码不朽 编写可维护软件的10大要则》中的高层级部分。主要内容如下: 一. 分离模块之间的关注点 此处的模块对应的是类的概念。模块...