A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© Java土豆 中级黑马   /  2015-6-14 02:13  /  534 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

类加载是怎么执行的,并且从哪里开始执行?

4 个回复

倒序浏览
娄的加载是由虚拟机编译的时候完成的,编译器编译的时候,会首先加载main方法的娄到内存中的方法区(这里说的不是生成.class文件),从main方法中由上往下执行,比如在执行到 Person p = new Person(); 这条语句的时候,在读到Person p的时候,虚拟机就会到这个娄加载到方法区,读到new Person();的时候,就会在堆内存开辟一个空间,并对对象数据初始化,之后把new Person所在的地址值赋值的盏内存的p

点评

说的很详细  发表于 2015-6-16 19:52
回复 使用道具 举报
补充两点:1 如果类有直接父类或实现了接口,那会首先加载父类  2虚拟机加载类到方法区中,会根据方法区中的类信息在堆内存中创建一个Class类对象
回复 使用道具 举报
类加载很虚的东西。                        
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马