java - 引用计数 Java
问题描述
考虑以下java代码:
class Person {
String name;
int age;
}
Person p1 = new Person();
Person p2 = new Person();
Person p3 = p2;
p3 = p1;
这里总共创建了多少对象和引用变量?name
即使它从未被实例化也被创建?2 对象已创建但有 3 或 5 个参考变量?
解决方案
2 个对象被初始化,p1
并且p2
.
String name
将默认为null
但有一个引用,所以 2 个引用,每个Person
.
int
是一个原始值,默认为 0,这里没有任何异常。
p3
是参考。最后一行是赋值,这里没有创建任何内容。
答案是 5。
推荐阅读
- android - 如何使状态栏变白或隐藏?
- ruby-on-rails - 在 Rails 中的控制器中的操作之间共享变量
- javascript - Wordpress:从某些页面中删除 DIV 类/可见和代码
- python - 在python中使用exec执行无限循环时退出无限循环
- java - 即使值存在,LinkedHashMap get(key) 也会返回 null
- scala - Scala中的Spark分组映射UDF
- javascript - 单击按钮时随机播放 div
- javascript - 使用 useState 打开数组中的单个元素
- java - 初始化程序块的不可预测的行为
- html - 如何在css中创建彼此相邻浮动的列