Java-内部类什么时候被ClassLoader加载?

Java-内部类什么时候被ClassLoader加载?

归属感 发布于 2017-09-23 字数 280 浏览 1164 回复 1

我们知道内部类编译之后会自动生成型如A$1.class的文件。那么这个class是什么时候classloader加载的。是第一次在A.class中引用到才加载,还是加载A.class就加载呢?,谁能详细讲一下这个的加载机制。还有原来包含内部类的外部类是如何找到内部类的,内部类访问外部类的属性方法又是如何实现的。

如果你对这篇文章有疑问,欢迎到本站 社区 发帖提问或使用手Q扫描下方二维码加群参与讨论,获取更多帮助。

扫码加入群聊

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

浮生未歇 2017-09-30 1 楼

要看内部类形态决定其何时被加载:

如果是一个static class SubClass ...
则在A被引用的时候被加载 A > SubClass
如果是一个class SubClass 则在其父类被引用的时候被加载
ParentClass > SubClass