GC Root选取策略
所谓“GC roots”,或者说tracing GC的“根集合”,就是一组必须活跃的引用。
final变量和静态变量位置:
其实,移除永久代的工作从JDK1.7就开始了。JDK1.7中,存储在永久代的部分数据就已经转移到了Java Heap或者是 Native Heap。
但永久代仍存在于JDK1.7中,并没完全移除,譬如符号引用(Symbols)转移到了native heap;
字面量(interned strings)转移到了java heap;
类的静态变量(class statics)转移到了java heap。
非final的成员变量在堆里,final类型的成员变量存放在方法区的常量池中,引用在metaspace,对象还是在堆里面。
如何实现国际化
ResourceBundle.getBundle
随机数原理
https://blog.csdn.net/wokaowokaowokao12345/article/details/74011394
随机数解决共享
ThreadLocalRandom
LockSupport.park底层
https://blog.csdn.net/weixin_39687783/article/details/85058686
B+数数据库层级数,度:子节点数,阶:节点包含的key数量
B树是一种专用的M阶树,可广泛用于磁盘访问。 M阶树顺序的B树最多可以有m-1个键和M个子树。
使用B树的主要原因之一是它能够在单个节点中存储大量键,并且通过保持树的高度相对较小来存储大键值。
所以,B+树在B树的基础上做了优化,它与B树的差异在于:
(1)有 k 个子节点的节点必然有 k 个key;
(2)非叶子节点仅具有索引作用,跟记录有关的信息均存放在叶子节点中。
(3)树的所有叶子节点构成一个有序链表,可以按照key排序的次序遍历全部记录。
MYSQL的B+Tree索引树高度如何计算
B树和B+树优缺点
准确描述,但是动词形态难于记忆