是实例引用变量(对象),在堆上立即创建分配的对象?

时间:2017-07-07 12:51:38

标签: java

假设我们有一个分配给对象的实例引用变量。

func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {

}

每当我创建一个新的Player实例时。

public class Player {
     private Object object = new Object();
}

据我所知,可能是错的我对此很陌生。堆为实例原始变量分配内存并将它们存储在对象中。

如果对分配给对象的实例引用变量执行相同操作,则不会立即创建新实例,或者只在调用引用变量时才会发生这种情况吗?

1 个答案:

答案 0 :(得分:0)

如果我正确理解你的问题,实例化一个新的Player实例(在堆上)也会实例化一个新的Object(在堆上),而Player实例保存对Object实例的引用。 Java没有做“懒惰”的实例化。