https://www.zhihu.com/question/20097631 一、JVM基础系列开篇:为什么要学虚拟机? https://www.cnblogs.com/chanshuyi/p/jvm_serial_00_why_learn_jvm.html 接着我想聊聊我的第二个观点:学习虚拟机 ...
分类:
编程语言 时间:
2020-05-20 20:14:34
阅读次数:
86
Js的GC机制 在 七种基本类型中的引用类型 的变量其占据内存空间大且大小不固定,在堆内存中实际存储对象,在栈内存中存储对象的指针,对于对象的访问是按引用访问的。在栈区中执行的变量等是通过值访问,当其作用域销毁后变量也就随之销毁,而使用引用访问的堆区变量,在一个作用域消失后还可能在外层作用域或者其他 ...
分类:
Web程序 时间:
2020-05-20 12:41:10
阅读次数:
76
java面向对象深入大纲package与importpackage概述package存在的意义是防止命名冲突造成使用不便。package类似一个文件夹,文件夹内有各种文件。package与package的附属关系用“.”连接,类似父文件夹中的子文件夹。比如说java.lang.String就是java文件夹中的lang文件夹中的String文件。java.io.InputStream则是java文
分类:
编程语言 时间:
2020-05-20 09:24:57
阅读次数:
54
## java最新面试题2020# 一面 1. 手撕twosum代码,手撕归并排序,还有一个题忘了,我记得是用hashmap做2. 讲一下Java垃圾回收分代回收各种算法3. Java内存结构4. Java堆存哪些数据5. 讲一下四种引用6. Java语言的特性7. 抽象,多态8. 项目中一个模块具... ...
分类:
编程语言 时间:
2020-05-18 14:08:18
阅读次数:
147
一、定义 1、堆:FIFO队列优先,先进先出。jvm只有一个堆区被所有线程所共享!堆存放在二级缓存中,调用对象的速度相对慢一些,生命周期由虚拟机的垃圾回收机制定。 2、栈:FILO先进后出,暂存数据的地方。每个线程都包含一个栈区!栈存放在一级缓存中,存取速度较快,“栈是限定仅在表头进行插入和删除操作 ...
分类:
其他好文 时间:
2020-05-18 00:25:23
阅读次数:
89
话不多说,直接撸图: 1》Eden中通过可达性分析,存活下来的对象直接通过复制算法移动到From区域中,此时该对象的分代年龄加1: 2》当下一次虚拟机进行【Minor GC】时,会同时对【Eden】和【From】进行垃圾回收,如果搞对象还在使用中,则被移动到另一个【From】区,对象分代年龄再次加1 ...
分类:
其他好文 时间:
2020-05-17 13:12:00
阅读次数:
120
1.java内存模型注:JAVA中的堆栈和内存模型:,1.1内存模型:Java内存模型是围绕着在并发过程中如何处理原子性、可见性和有序性来建立的(三个特性详解见10.)a.Java内存模型将内存分为了主内存和工作内存b.Java内存模型规定所有的变量都存储在主内存中,每个线程有自己的工作内存c.主内存主要包括:堆和方法区,主内存是所有线程共享的d.工作内存主要包括:该线程私有的栈和对主内存部分变量
分类:
编程语言 时间:
2020-05-16 09:22:36
阅读次数:
70
一、Python基础 1. 变量常量 2. 基本数据类型 3. 垃圾回收机制 ...
分类:
编程语言 时间:
2020-05-15 20:01:53
阅读次数:
58
1. 什么是 “垃圾” ? x = 1 //把 “1” 这个值赋给 “x”,在计算机中,先是定义了一个变量x,然后在内存里面开辟了一块内存空间,用来存放x的值,也就是1,这个时候,x和1是绑定的。 这种绑定关系,叫做 “引用计数” 。,这时候,“1”的引用计数就是1. 如果在这个时候,再一次给x赋值 ...
分类:
其他好文 时间:
2020-05-15 19:55:19
阅读次数:
54