
Java
文章平均质量分 92
X_Radishi
这个作者很懒,什么都没留下…
展开
-
容器基础知识
List:有序、不唯一 ArrayList:Object数组 LinkedList:双向链表(JDK1.6之前为循环链表) Vector:Object数组 Set:唯一 HashSet:无序、唯一,底层使用HashMap实现 LinkedHashSet:继承自HashSet,底层使用LinkedHashMap实现,而LinkedHashMap又继承自HashMap TreeSe...原创 2020-04-17 17:18:21 · 210 阅读 · 0 评论 -
Java基础知识随记
==与equals()的区别 ==比较的是两个对象的地址,或基本数据类型的值。 equals()是Object中的方法,如果没重写的话比较的也是对象的地址,在String类中重写了equals()方法所以比较的是对象的内容 Java中只有值传递 就算是传入的是对象的引用,也知识将引用赋值后传递,并不是传递对象。 线程的基本状态 初始状态、运行状态、阻塞状态、等待状态、终止状态、等待超时...原创 2020-04-17 17:16:27 · 211 阅读 · 0 评论 -
JVM垃圾回收
一. JVM内存分配和回收 Java中内存自动管理主要是针对对象的内存分配和对象的内存回收,其中最主要的的是堆的管理。 1. 堆内存划分 从垃圾回收的角度,现在主流的垃圾收集器都将堆分为新生代和老年代,再细分就分为Eden、From Survivor、To Survivor等空间。 堆内常见的内存分配策略 对象优先在Eden区分配 大对象在老年代分配,避免频繁复制导致效率低下,如大数组、字符...原创 2020-04-17 17:15:00 · 143 阅读 · 0 评论 -
JVM内存管理
一. JVM内存 1. jvm内存模型 在JDK1.8之后方法区就被删除,并且在直接内存中添加了元空间。 2. 详细说明 线程私有区域: 虚拟机栈 本地方法栈 程序计数器 线程共享区域: 堆 方法区 直接空间 2.1 程序计数器 程序计数器是用来存放下一条指令所在单元的地址的地方。分支、循环、跳转等功能都需要程序计数器来来完成,每个线程都有一个程序计数器,各个线程的程序计数器互不...原创 2020-04-17 17:06:33 · 205 阅读 · 0 评论