1.GC回收哪些内存区域呢?堆内存对象数组方法区该类所有的额实例都已经被回收,也就是java堆中不存在该类的任何实例加载该类的ClassLoader已经被回收该类对应的java.lang.Class对象在任何地方没有被引用,也无法通过反射访问该类方法。垃圾回收性价比比较低,一般不回收废弃常量无用的类(需要同时满足以下三个条件)2.GC是如何判断垃圾对象的?1.引用计数法给对象的对象头中添加一个co
分类:
编程语言 时间:
2020-08-18 13:42:33
阅读次数:
73
方法调用的底层实现 1. 一般我们写的代码都是经过编译,类加载,进入运行时数据区,一般是方法区,人关注的是方法的执行 2. jvm关注的是字节码的执行, 3. main函数是指令的起点,jvm创建main线程执行main方法,出发jvm的一些列指令,使jvm跑起来 4. 所以要了解在jvm中 方法调 ...
分类:
其他好文 时间:
2020-08-05 00:09:12
阅读次数:
95
但凡问到JVM(Java虚拟机)通常有99%的概率一定会问,在JVM中如何判断一个对象的生死状态?判断对象的生死状态的算法有以下几个:1、引用计数器算法引用计算器判断对象是否存活的算法是这样的:给每一个对象设置一个引用计数器,每当有一个地方引用这个对象的时候,计数器就加1,与之相反,每当引用失效的时候就减1。优点:实现简单、性能高。缺点:增减处理频繁消耗cpu计算、计数器占用很多位浪费空间、最重要
分类:
其他好文 时间:
2020-08-02 10:15:42
阅读次数:
88
内存分析 内存分析: Java内存分析: 堆: 存放new的对象和数组 可以被所有的线程共享,不会存放别的对象引用 栈: 存放基本变量类型(会包含这个基本类型的具体数值) 引用对象的变量(会存放这个引用在堆里面的具体地址) 方法区: 可以被所有的线程共享 包含了所有的class和static变量 三 ...
分类:
编程语言 时间:
2020-07-31 14:06:11
阅读次数:
77
Java运行时数据区: 主要分为线程共享部分和线程独占部分两个部分 线程共享部分: 所有线程都能访问的内存区域,随着虚拟机或者GC而创建和销毁,主要分为方法区和堆内存 方法区: JVM用来存储加载的类信息,常量,静态变量,编译后的代码等数据 方法区在java虚拟机规范中是一个逻辑区划,不同虚拟机的实 ...
分类:
编程语言 时间:
2020-07-23 22:25:11
阅读次数:
85
static 静态的东西可以被该类所有的对象共享; 被存在方法区中的静态区中。 静态的东西可以直接用对象名调用,也可以用类名调用,但是推荐用类名调用; 假如不用类名调用的话,还得新建一个对象才可以调用。浪费空间。 静态的随着类的加载而加载进来,比创建对象要加载的早,非静态的东西随着对象的创建而存在, ...
分类:
其他好文 时间:
2020-07-23 16:42:14
阅读次数:
73
自动内存管理 运行时数据区 运行时数据区主要包括虚拟机栈、本地方法栈、程序计数器、方法区、堆等,其中方法区和堆属于线程共享内存区域;虚拟机栈和本地方法栈属于线程隔离的数据区 程序计数器 占用内存空间较小,可以当作是当前线程执行的字节码行号指示器。jvm的多线程是通过线程切换并分配一定处理时间的方式来 ...
分类:
其他好文 时间:
2020-07-18 22:42:43
阅读次数:
74
####简单类对象的实例化过程: 在方法区加载类 在栈内存申请空间,声明变量P 在堆内存中开辟空间,分配对象地址 在对象空间中,对对象的属性进行默认初始化,类成员变量显示初始化 构造方法进栈,进行初始化 初始化完成后,将堆内存中的地址赋给引用变量,构造方法出栈 ####子类对象的实例化过程: 在方法 ...
分类:
编程语言 时间:
2020-07-17 01:21:13
阅读次数:
96
方法区概述 栈堆方法区间的交互关系 方法区的基本理解 Hotspot 中方法区的演进 设置方法区大小的参数 OOM PermGen 和 OOM Metaspace 举例 方法区的内部结构 class 文件中常量池的理解 运行时常量池的理解 图示举例方法区的使用 方法区在 jdk6 、 jdk7 、 ...
分类:
其他好文 时间:
2020-07-16 21:19:58
阅读次数:
84
方法重载是指在一个类中定义多个同名的方法,但要求每个方法具有不同的参数的类型或参数的个数。调用重载方法时,Java编译器能通过检查调用的方法的参数类型和个数选择一个恰当的方法。 在java语言中,是怎么进行方法区分的呢? 首先java编译器会通过方法名进行区分,但是Java语言允许方法名相同的情况出 ...
分类:
其他好文 时间:
2020-07-16 12:03:59
阅读次数:
61