文章目录
new关键词的作用成员变量"字符串"
new关键词的作用
Person person = new Person();
右边的new Person: 是以Person类为模板在堆中实例化一个对象。右边的(): 意味着在对象实例化后,调用Person的构造器,对其初始化。左边的Person person: 创建一个Person类的引用变量,存放在栈中。=: 使用右边的对象引用指向刚刚创建的person引用变量。
成员变量
如果Person有一个成员变量Cat,那么在new Person时,会创建一个Cat引用,而不会创建一个Cat空间。
“字符串”
"hello"是一个对象,是java中唯一一个不需要new就会生成的对象。
String s = new String(“hello”); 其实是将"hello"对象的值浅拷贝到s对象中。 双引号生成的对象都在StringTable(StringTable在堆中)中。