1.B树和B+树的区别:
-
B+树中只有叶子节点会带有指向记录的指针(ROWID),而B树则所有节点都带有,在内部节点出现的索引项不会再出现在叶子节点中。
-
B+树中所有叶子节点都是通过指针连接在一起,而B树不会。
B+树的优点:
-
非叶子节点不会带上ROWID,这样,一个块中可以容纳更多的索引项,一是可以降低树的高度。二是一个内部节点可以定位更多的叶子节点。
-
叶子节点之间通过指针来连接,范围扫描将十分简单,而对于B树来说,则需要在叶子节点和内部节点不停的往返移动。
B树的优点:
对于在内部节点的数据,可直接得到,不必根据叶子节点来定位。
2. GC过程
年轻代垃圾回收,引起老年代内存不足,最终引起FullGC。
回收过程分两步:
1、找到要清除的对象;一般使用GC-ROOTS方法;没有Roots的类被清楚;
2、使用回收算法,清除需要回收的对象;
回收算法(车很多集团、美团外卖一面)
问题:有哪些回收算法?以及每种算法在哪些垃圾回收器中使用?
垃圾回收算法有四种:
标记清除算法(CMS、G1)
标记整理算法(老年代:parallel old和serial old垃圾回收器使用该算法)
复制算法(新生代:serial new,parallel new和parallel scanvage)
标记压缩算法
可达性分析,判断对象已死
两种方法:
GC-ROOTS:
强引用导致的问题:当内存空间不足,系统撑不住了,JVM 就会抛出 OutOfMemoryError 错误。即使程序会异常终止,这种对象也不会被回收。这种引用属于最普通最强硬的一种存在,只有在和

本文详细探讨了Java数据开发面试中的关键知识点,包括B树与B+树的区别、GC过程、内存区域特别是Eden的作用、类加载的五个步骤、红黑树的旋转操作、线程池的类型及其作用,以及双亲委派机制的破坏情况。同时,文章还涵盖了防止过度拟合的方法和数据归一化技术。
393

被折叠的 条评论
为什么被折叠?



