涉及实例化类的步骤?

时间:2013-06-28 08:16:19

标签: java

当我们编写类似Foo f = new Foo();的语句时,我们知道JVM调用默认ClassLoader.loadClass(),它返回Class的实例,现在我们如何从中获取Foo实例Class

1 个答案:

答案 0 :(得分:4)

我不完全确定你在问什么,但是如果你在创建一个类的新实例时询问执行了什么代码,那么答案是这是Java虚拟机的原始操作,并且没有涉及任何Java代码。

实例创建的行为由Java语言规范的12.5. Creation of New Class Instances部分指定。

Java虚拟机规范中还有一个关于4.10.2.4. Instance Initialization Methods and Newly Created Objects的部分,但这并不是那么有趣。

要了解创建对象时实际发生的情况,您需要选择JVM实现并阅读其源代码。或者,您可能会做大多数Java程序员所做的事情,并将其视为一个本质上神奇的操作,只是有效!