首页
首页
沸点
课程
直播
活动
竞赛
商城
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
JVM
订阅
羽毛大人
更多收藏集
微信扫码分享
微信
新浪微博
QQ
18篇文章 · 0订阅
老大难的 Java ClassLoader 再不理解就老了
ClassLoader 是 Java 届最为神秘的技术之一,无数人被它伤透了脑筋,摸不清门道究竟在哪里。网上的文章也是一篇又一篇,经过本人的亲自鉴定,绝大部分内容都是在误导别人。本文我带读者彻底吃透 ClassLoader,以后其它的相关文章你们可以不必再细看了。 顾名思义,它…
[动态代理三部曲:中] - 从动态代理,看Class文件结构定义
这篇内容是上一篇[动态代理三部曲:上] - 动态代理是如何"坑掉了"我4500块钱的补充,进一步分析篇。 建议二者结合食用,醇香绵软,入口即化。 好了,不扯淡了,开始... 这部分内容不知道各位小伙伴是怎么感觉的。最开始学习的时候,我是一头雾水,不知道如何下手。当一步步结合反射…
热修复与插件化基础——Java与Android虚拟机
使用javac将java文件编译成class文件。 类加载器(ClassLoader)将class字节码加载进JVM对应的内存中。 JVM将内存分配给方法区、堆区、栈区、本地方式栈4个部分,这4个部分分别存储字节码不同的部分。 垃圾回收器(gc)会管理整个内存空间中的垃圾。 L…
Java 堆内存溢出梗概分析
任何使用过基于 Java 的企业级后端应用的软件开发者都会遇到过这种低劣、奇怪的报错,这些报错来自于用户或是测试工程师: java.lang.OutOfMemoryError:Java heap space。
[动态代理三部曲:上] - 动态代理是如何"坑掉了"我4500块钱
自己一直很想好好了解一波动态代理,无论是从技术角度,还是工作角度。而且就冲这个很洋气的名字,学是必须得学的。就算饿死,死外边,从这跳下去,我也要学明白动态代理。 首先,先谈一谈我们对动态代理的理解。网上很多资源喜欢把动态代理和静态代理放在一起去对比。这里我们就先不这么来做了,个…
Java反射详解
反射的概念是软件可以在运行时,检查,分析,修改代码。例如:在Junit中,使用@Test注解等。 在Java中,通过反射可以在运行时检查字段,方法,类,接口,注解等。无需知道类或者方法是如何调用的,也无需知道参数是如何传递的,这些都可以在运行时通过反射获取。同样也可以通过反射创…
JVM如何加载字节码文件?
将class文件字节码内容加载到内存中,并将这些静态数据转换成方法区中的运行时数据结构,在堆中生成一个代表这个类的java.lang.Class对象,作为方法区类数据的访问入口,这个过程需要类加载器参与。 初始化阶段是执行类构造器<clinit>()方法的过程。类构造器<cli…
Android类装载机制
上两篇文章分析了资源的加载和进程,Activity启动相关的内容,这篇是Dex加载相关的内容了,本篇结束,我们也就可以开始对于一些热修复,插件化框架的实现剖析了。 上图为Android中ClassLoader的类图,与JVM不同,Dalvik的虚拟机不能用ClassCload直…