java 对象实例化


1、显式实例化:new、newInstance()、clone()、ObjectInputStream.readObject()
2、隐式实例化:

(1)保存命令行参数的String 对象。每个命令行参数都会有一个String对象的引用,把它们组织成一个String数组并作为一个参数传递到每一个程序的main()方法中
(2)对于JVM装载的每一个类型、它都会暗中实例化一个Class对象来代表这个类型。
(3)JVM装载在常量池中包含CONSTANT_String_info入口的类的时候,他都会创建新的String对象的实例来表示这些常量字符串
(4)通过执行包含字符串连接操作的表达式产生。如果这样的字符串不是一个编译时常量,用于中间处理的String和StringBuffer对象会在计算表达式的过程中创建。Ssytem.out.println(STR1+STR2);包含了3个隐式创建的String对象和一个StringBuffer对象。最后一个String对象是通过调用StringBuffer对象的toString()方法建立的。

你可能感兴趣的:(java,jvm)