Java中使用关键字new和构造方法,来创建一个对象。
【例】如下是一个名为Cat的类
public class Cat {
public Cat() {
System.out.println("这是构造方法");
}
}
创建对象:
Cat c = new Cat();
“Cat c ”:在内存中分配一个变量c,是Cat类型的。
“new Cat ()”:new这个Cat类的一个对象。程序运行的时候,会调用构造方法,执行结束,Cat类型的对象创建完成,继而真正地出现在了内存中;
那么,在内存中的哪里呢?如何找到创建出来的对象呢?
使用new关键字创建出来的对象被分配在内存的“堆区(heap)”,new完对象之后会将其内存地址赋给左边的变量c,这就是Java中引用的概念。我们可以称c为变量、引用变量、引用,皆可。
所以,c的值就是一个“内存地址”,或者是“引用地址”。通过这个地址,就可以准确的找到我们刚才创建出来的对象,以后我们要使用这个对象做一些事情,调用此对象的方法什么的,都用过这个引用。
注意! c就是引用,不是对象。我们new出来的这个东西,真正在内存中的这个东西叫做对象,叫做实例。
有分配内存才表明这个对象确实存在。
参考来源 : https://zhidao.baidu.com/question/1731754726601044107.html