随笔分类 -  2018~2022归档 / Java

摘要:1 Lambda表达式 Java8 新特性 1.1 从匿名内部类到Lambda **匿名内部类的作用:**当一个内部类只需为其创建一次对象,且以后也不会再被用到,就可以使用匿名内部类简化代码编写。 **例子:**创建线程。 new Thread(new Runnable() { @Override 阅读全文
posted @ 2021-01-28 16:42 CofJus 阅读(201) 评论(0) 推荐(0)
摘要:• 根节点枚举 ○ 为保证一致性,所有收集器在根节点枚举这一步骤时都是必须暂停用户线程的。 ○ 现在可达性分析算法耗时最长的查找引用链的过程已经可以做到与用户线程一起并发,但根节点枚举始终还是必须在一个能保障一致性的快照中才得以进行。 ○ 虚拟机直接得到哪些地方存在着对象:使用一组称为OopMap的 阅读全文
posted @ 2020-08-17 15:42 CofJus 阅读(220) 评论(0) 推荐(0)
摘要:• 引用计数法:在Java领域,至少主流的Java虚拟机里面都没有选用引用计数算法来管理内存,主要原因是,这个看似简单的算法有很多例外情况要考虑,必须要配合大量额外处理才能保证正确地工作,譬如单纯的引用计数就很难解决对象之间相互循环引用的问题。 • 可达性分析 ○ 通过一系列称为“GCRoots”的 阅读全文
posted @ 2020-08-03 15:03 CofJus 阅读(191) 评论(0) 推荐(0)
摘要:• 运行时数据区 • 程序计数器 ○ 程序计数器(Program Counter Register)是一块较小的内存空间,它可以看作是当前线程所执行的字节码的行号指示器。 ○ 为了线程切换后能恢复到正确的执行位置,每条线程都需要有一个独立的程序计数器,各条线程之间计数器互不影响,独立存储,我们称这类 阅读全文
posted @ 2020-08-02 08:29 CofJus 阅读(95) 评论(0) 推荐(0)
摘要:描述:String并非Java支持的基本类型,而是包含在java.lang这个包下的一个类。 下面是JDK源码中String的声明: 1 public final class String 2 implements java.io.Serializable, Comparable<String>, 阅读全文
posted @ 2019-05-12 10:44 CofJus 阅读(267) 评论(0) 推荐(0)