类加载的整个生命周期: 加载、连接(验证、准备、解析)、初始化、使用、卸载。 加载: class文件中的二进制数据读取到内存中,然后将该字节流所代表的静态数据结构转化为方法区中运行的数据结构,并且在堆内存中生成一个java.lang.Class对象作为访问方法区数据结构的入口 验证: 确保当前cla ...
分类:
编程语言 时间:
2019-01-06 23:01:29
阅读次数:
193
java —— 单例模式 singleton 一、 单例模式 singleton 单例模式,在我看来,就是一个类,可以称它为 单例类 ,单例类有以下特点 单例类在堆内存中只会存在一份,即永远只有一个固定不变的堆内存地址 单例类是自己主动实例化的 工程中所有的类 都可以访问到单例类 单例类在堆内存中只 ...
分类:
编程语言 时间:
2019-01-06 16:29:22
阅读次数:
188
在讲解String之前,我们先了解一下Java的内存结构。一、Java内存模型按照官方的说法:Java虚拟机具有一个堆,堆是运行时数据区域,所有类实例和数组的内存均从此处分配。JVM主要管理两种类型内存:堆和非堆,堆内存(HeapMemory)是在Java虚拟机启动时创建,非堆内存(Non-heapMemory)是在JVM堆之外的内存。简单来说,非堆包含方法区、JVM内部处理或优化所需的内存(如J
分类:
编程语言 时间:
2019-01-06 12:46:19
阅读次数:
218
一、对象创建 Student s = new Student(); 步骤: (1)加载 Student.class 文件进内存; (2)在栈内存中为 s 开辟空间; (3)在堆内存为学生对象开辟空间; (4)对学生对象的成员变量进行默认初始化; (5)对学生对象的成员变量进行显示初始化; (6)通过 ...
分类:
其他好文 时间:
2019-01-05 19:50:40
阅读次数:
175
JVM的内存区域划分 来源 https://www.cnblogs.com/xiaoxi/p/6421526.html 说到Java内存区域,可能很多人第一反应是“堆栈”。首先堆栈不是一个概念,而是两个概念,堆和栈是两块不同的内存区域,简单理解的话,堆是用来存放对象而栈是用来执行程序的。其次,堆内存 ...
分类:
其他好文 时间:
2019-01-04 17:19:32
阅读次数:
145
1.作用域 栈内存 js执行的环境 (作用域) 堆内存 存放代码的空间 存放方式 键值对的形式存 字符串的形式存 Js代码在执行之前,浏览器会给他一个全局作用域叫window,每个作用域下分连个模块,一个是内存模块,一个是执行模块。内存模块会给所有的变量一个内存地址。变量的声明在js中靠关键字var ...
分类:
其他好文 时间:
2019-01-04 17:17:06
阅读次数:
177
恢复内容开始 1.作用域 栈内存 js执行的环境 (作用域) 堆内存 存放代码的空间 存放方式 键值对的形式存 字符串的形式存 Js代码在执行之前,浏览器会给他一个全局作用域叫window,每个作用域下分连个模块,一个是内存模块,一个是执行模块。内存模块会给所有的变量一个内存地址。变量的声明在js中 ...
分类:
其他好文 时间:
2019-01-04 17:12:49
阅读次数:
151
1.作用域:堆内存和占内存。 JS代码在执行之前,浏览器会给他一个全局作用域叫window,每个作用域下分两个模块,一个是执行模块,一个是内存模块。内存模块会给所有的变量一个内存地址。变量的声明在js中靠关键字var和function。 2.什么时候还有作用域的形成? 浏览器天生有一个全局的就win ...
分类:
其他好文 时间:
2019-01-02 20:13:32
阅读次数:
187
1.作用域 栈内存 :js执行的环境(作用域) 堆内存:存放代码块的空间, 存放港式:键值对的形式存放或字符串的形式存放 Js代码执行前,浏览器会给他一个全局作用域叫window,每个作用域下分两个模块, 一个是存储模块,一个是执行模块。内存模块会给所有的的变量一个内存地址。变量的声明在js中靠关键 ...
分类:
其他好文 时间:
2019-01-02 20:13:14
阅读次数:
251
作用域 栈内存:js执行的环境(作用域) 堆内存:存放代码的空间,存放方式(键值对的形式存,以字符串的形式存) js代码在执行之间浏览器会给他一个全局作用域,叫window,每个作用域下分俩个模块,一个是内存模块,一个是执行模块,内存模块会给所有的变量一个内存地址,变量的声明在js中靠关键字var和 ...
分类:
其他好文 时间:
2019-01-02 15:05:59
阅读次数:
173