在类中的位置不同 成员变量:在类中方法外 局部变量:在方法定义中或者方法声明上 在内存中的位置不同 成员变量:在堆内存(成员变量属于对象,对象进堆内存) 局部变量:在栈内存(局部变量属于方法,方法进栈内存) 生命周期不同 成员变量:随着对象的创建而存在,随着对象的消失而消失 局部变量:随着方法的调用 ...
分类:
其他好文 时间:
2019-04-13 16:24:30
阅读次数:
103
JS中的变量是保存在栈内存中的 基本数据类型的值直接在栈内存中存储; 值与值之间是独立存在的,修改一个变量不会影响其他变量; 对象是保存到堆内存中的,每创建一个新的对象,就会在堆内存中开辟一个新的空间; 而变量保存的是对象的内存地址(对象的引用),如果两个变量保存的是同一个对象引用,当一个变量修改属 ...
分类:
Web程序 时间:
2019-04-05 21:33:36
阅读次数:
235
final 不可变的; 其中,修饰类时候,该类不能被继承,没有子类,每个类都必有父类(祖宗类Object类),它自己内部成员方法可能是覆盖重写了其父类的方法; 修饰方法时候,表示所修饰的方法不能被子类覆盖重写; 修饰局部变量时候:只能赋值一次,不然编译报错: 其中,等号左边引用类和对象名是进入栈内存 ...
分类:
其他好文 时间:
2019-04-03 16:42:31
阅读次数:
162
Js具有自动垃圾回收机制。垃圾收集器会按照固定的时间间隔周期性的执行。 JS中最常见的垃圾回收方式是标记清除。 工作原理:是当变量进入环境时,将这个变量标记为“进入环境”。当变量离开环境时,则将其标记为“离开环境”。标记“离开环境”的就回收内存。 工作流程: 1. 垃圾回收器,在运行的时候会给存储在 ...
分类:
Web程序 时间:
2019-04-03 09:31:15
阅读次数:
163
关于多进程与多线程 使用多进程的目的:提高CPU利用率。 使用多线程的目的:提高应用程序?利用率。 多线程与多进程区别:进程间内存独立;同一个进程的线程间共享“堆内存和方法区内存”,栈内存是独立的,一个线程一个栈。 JVM原理 Java命令启动JVM虚拟机,等于启动了一个进程,该进程会自动启动一个主 ...
分类:
编程语言 时间:
2019-03-22 19:08:42
阅读次数:
180
恢复内容开始 和`堆内存`是什么?有什么用? 是什么? 基本数据类型 目前有5种基本数据类型: 、`Number Boolean Null NaN`。 5种基本数据类型在变量之间传递时,是按值传递的。因为值的大小和类型是确定的,所以会将 恢复内容结束 和`堆内存`是什么?有什么用? 是什么? 基本数 ...
分类:
其他好文 时间:
2019-03-22 18:50:22
阅读次数:
118
JS中存在两种类型的数据,基本类型和引用类型 基本类型:简单的数据段 --> 栈内存 应用类型:多个值组成的对象 --> 堆内存 基本类型:JS有6种基本类型(原始值) 1. string --> 字符串 2. number --> 数字 3. boolean --> 布尔 4. null --> ...
分类:
编程语言 时间:
2019-03-18 13:41:29
阅读次数:
163
面向对象变量 局部变量和成员变量区别 区别一:定义的位置不同 定义在类中的变量是成员变量 定义在方法中或者{}语句里面的变量是局部变量 区别二:在内存中的位置不同 成员变量存储在对内存的对象中 局部变量存储在栈内存的方法中 区别三:声明周期不同 成员变量随着对象的出现而出现在堆中,随着对象的消失而从 ...
分类:
编程语言 时间:
2019-03-17 21:36:41
阅读次数:
152
194.说一下 jvm 的主要组成部分?及其作用? JVM的基本结构及其各部分详解(一) JVM的基本结构及其各部分详解(二) 195.说一下 jvm 运行时数据区? JVM入门——运行时数据区 196.说一下堆栈的区别? 堆是进程资源,栈是线程资源, 1.栈内存存储的是局部变量而堆内存存储的是实体 ...
分类:
其他好文 时间:
2019-03-14 16:43:04
阅读次数:
214
java深浅拷贝 一、前言 为什么会有深浅拷贝这个概念? 我觉得主要跟JVM内存分配有关,对于基本数据类型,只存在栈内存,所以它的拷贝不存在深浅拷贝这个概念。而对于对象而言,一个对象的创建会在内存中分配两块空间,一个在栈内存存对象的引用指针,一个在堆内存存放对象。这个时候会有一个问题,你拷贝的只是这 ...
分类:
编程语言 时间:
2019-03-14 00:35:48
阅读次数:
200