问题描述
在java中,例如在一个Student类中,其属性和方法就不详细的介绍了,在Students1=newStudent();和Students2=newStudent()他们的加载顺序?是怎么加载的?
解决方案
解决方案二:
按照创建的顺序加载,由ClassLoader加载的
解决方案三:
建议多看书,你这提问说实话看不懂,只有Student一个类,何谈顺序
解决方案四:
按你写代码的顺序加载咯
解决方案五:
肯定有Object了,然后在加载你运行的那个类的字节码,然后在加载Studet的字节码,初始化静态变量,然后是构造方法
解决方案六:
有点不明白楼主的,是两个对象的实例的加载?如果是类成员的加载,可以打印输出就能看见顺序了
解决方案七:
哈哈~建议多看看CoreJava,
解决方案八:
引用4楼dzq584462393的回复:
肯定有Object了,然后在加载你运行的那个类的字节码,然后在加载Studet的字节码,初始化静态变量,然后是构造方法
正解。看是否有继承父类,一级级往上面找,父类可能还有父类,这样一直下去,先加载最上面的,按顺序下来,最后才是自己。
解决方案九:
栈上出现一个名字为s1的引用变量,堆中划出一个区域,再根据方法区的student类信息在那个堆区域中产生一个对象,先有空间,再有对象属性(默认值,eg:0,false,null。。。),再初始化。最后把这个对象的引用赋给s1.大概就这样,很粗浅,省略很多细节
解决方案十:
关于jvm.ClassLoader等,网上看看类的加载顺序
解决方案十一:
引用9楼rui888的回复:
关于jvm.ClassLoader等,网上看看类的加载顺序
半个月了你去哪里了才来
解决方案十二:
引用10楼magi1201的回复:
Quote: 引用9楼rui888的回复:
关于jvm.ClassLoader等,网上看看类的加载顺序半个月了你去哪里了才来
忙,恩最近都没怎么上。
解决方案十三:
该回复于2014-09-22 08:44:53被版主删除
时间: 2024-11-03 21:10:37