JVM专栏
主要包括类加载、字节码文件、内存模型、自动内存管理。帮助理解和面试。
飞流2023
村上春树有一句话: “我告诉你我喜欢你 并不是一定要和你在一起 只是希望今后的你 在遭遇人生低谷的时候 不要灰心 至少曾经有人被你的魅力所吸引 曾经是,以后也会是”。
我觉得陈奕迅的《十年》是一种不甘心,是一种歇斯底里宣泄,那种深深刻在骨子里的悲伤,而沙宝亮的《十年》是最后面对这样结局的一种释然,是一种美好的祝愿。那种"在最美的十年遇见你"。
展开
-
类的加载顺序和类的加载过程详解
Java创建对象的方式有哪些? new 反射 克隆 反序列化class对象获取的放肆有哪些? Class clazz1 = 类名.class 没有完成初始化过程 Class clazz2 = 类名.class.getClassLoader().loadClass("全限定名");没有完成初始化过程 Class clazz3 =...原创 2019-10-17 14:37:06 · 327 阅读 · 0 评论 -
JDK8垃圾回收长时间存活对象回收GC日志分析【第五篇】
package com.jvm.jvmdemo.test;/** * @author :miaoqs * @date :2019-10-31 23:13 * @description:TODO -XX:MaxTenuringThreshold=3 只适用于串行收集器 */public class GCLongLifeTest { /** * 1M容量 ...原创 2019-11-01 13:08:55 · 412 阅读 · 0 评论 -
JDK8垃圾回收GC日志分析【第四篇】
package com.jvm.jvmdemo.test;/** * @author :miaoqs * @date :2019-10-30 09:58 * @description: */public class GCGG1LogsTest { /** * 1M容量 */ private static int size = 1024 * 10...原创 2019-10-31 18:49:46 · 420 阅读 · 0 评论 -
JDK8垃圾回收GC日志分析【第三篇】
package com.jvm.jvmdemo.test;/** * @author :miaoqs * @date :2019-10-30 09:58 * @description: */public class GCCMSLogsTest { /** * 1M容量 */ private static int size = 1024 * 10...原创 2019-10-31 18:24:50 · 834 阅读 · 0 评论 -
JDK8垃圾回收GC日志分析【第二篇】
package com.jvm.jvmdemo.test;/** * @author :miaoqs * @date :2019-10-30 09:58 * @description: */public class GCParallelLogsTest { /** * 1M容量 */ private static int size = 1024...原创 2019-10-31 17:49:31 · 652 阅读 · 0 评论 -
JDK8垃圾回收GC日志分析【第一篇】
package com.clazz.clazz_demo.two_father;/** * @author :miaoqs * @date :2019-10-30 09:58 * @description: */public class TwoFatherTest { /** * 2M容量 */ private static int size ...原创 2019-10-31 15:56:47 · 885 阅读 · 0 评论 -
Linux操作系统下生成公钥和私钥
命令命令: ssh-keygen -t rsa -C "Xxx@163.com"注意: 邮箱可以不填,填邮箱可以收到公钥生成的邮件截图注意: 第一个红框是命令 第二个红框是生成的密钥的位置查看生成的公钥和私钥注意: id_rsa这个是私钥 id.rsa.pub这个是公钥...原创 2019-07-22 17:54:56 · 3303 阅读 · 0 评论 -
Linux系统使用scp命令在两台主机间进行文件传输
1、文件所在的主机命令[root@emooco ~]# ll图解2、文件要被传到的主机命令[root@emooco ~]# ll图解3、两台主机间传输文件命令命令[root@emooco ~]# scp elasticsearch-7.8.1-linux-x86_64.tar.gz root@172.16.198.134:/root/这里的传输的目的地是根目录。图解4、查看接受文件的主机是否接受成功命令[root@emooco ~]# ll图解...原创 2020-08-03 19:54:25 · 571 阅读 · 0 评论 -
Big Old都是这么看JVM的Young GC日志的吗?
1、示例程序代码package com.jvm.jvmdemo.gs;/** * @author :mq * @date :2020-10-09 10:15 */public class JvmGcTest { public static void main(String[] args) { byte[] arr1 = new byte[1024 * 1024]; arr1 = new byte[1024 * 1024]; arr1 =原创 2020-10-09 15:34:04 · 231 阅读 · 0 评论 -
Minor GC、Young GC、Full GC、Old GC、Major GC、Mixed GC傻傻分不清
1、Minor GC和Young GCMinor GC 和 Young GC,“新生代”也可以称之为“年轻代”, 这两个名词是等价的。那么在年轻代中的Eden内存区域被占满之后,实际上就需要触发年轻代的gc,或者是新生代的 gc。此时这个新生代gc,其实就是所谓的“Minor GC”,也可以称之为“Young GC”,这两个名词,就专门针对新生代的gc。2、Old GC老年代gc,称之为“Old GC”。3、Full GC对于Full GC指的是针对新生代、老年代、永久代的全体内存原创 2020-09-29 18:22:15 · 4944 阅读 · 0 评论 -
类的初始化和生命周期详细面试脑图
类的初始化主动引用【会初引起始化】1、使用New关键字实例化对象。2、访问某个类或接口的静态变量,或者对该静态变量赋值。3、调用类的静态方法.4、使用java.lang.reflect包下的方法对类进行反射调用的时候5、初始化一个类的子类时,发现其父类未初始化,优先初始化父类6、虚拟机启动的时候,用户需要指定一个主类,比如Main方法类,虚拟机会优先初始化这个主类。7、JDK1.7开始提供的动态语言支持,当java.lang.invoke.MethodHandler实例后的结果是REF-g原创 2020-06-13 20:37:33 · 684 阅读 · 0 评论 -
双亲委派模型脑图
双亲委派模型定义对于类的加载,只需要加载进内存一次就足够了.为了避免重复加载,当父 ClassLoader 已经加载了该类的时候,就没有必要子 ClassLoader 再加载一次。这种加载器之间的层次关系,就叫做双亲委派模型(Parents Delegation Model)。描述双亲委派模型要求除了顶层的启动类加载器外,其余的类加载器都应该有自己的父(没有继承关系,而是使用组合关系来组织他们 的层级关系)类加载器。如果一个类加载器收到了类加载的请求,这个类加载器先从自己已经加载的类中查询是否原创 2020-06-15 19:57:55 · 748 阅读 · 0 评论 -
类加载器面试脑图
前言面试官:讲一下类加载器?秋蝉、:......嗯...,想了10秒钟,类加载器就是加载字节码文件的。面试官:没了?秋蝉、:没了,我就了解这么多。其他的想不起来了。面试官:今天的面试到这结束,还有什么要问的吗?....回去等通知吧。正文以上是我亲身经历的一个场景,当时问的不是类加载器。回去等通知吧,不要傻乎乎的真在那等,一般让你回去等通知的基本就是不合适。没整理这个类加载器之前,直接让我说类加载器我也很难讲出一堆东西,也会几句话结束。整理了这个脑图以后学习了很多,也方便了自己以后随时查看。定原创 2020-06-13 20:51:01 · 318 阅读 · 0 评论