【发布时间】:2018-03-13 10:09:01
【问题描述】:
我对 Integer、Character 这样的 Java 包装类有疑问。我知道当我们声明一个类 Abc 并可以在 Java 中为它创建一个对象时,就像
Abc a = new Abc();
它引用Abc 类实例化 a 并且我们有包含变量值的字段。我的疑问是,当我们创建 Integer 类时:
Integer i = 5;
它如何指向价值5?它不应该包含一个包含其值并指向Integer 对象的字段,例如:
static int value; // To hold value 5 for Integer class
【问题讨论】:
-
我们不能在 Java 中声明像 Abc a = new Abc(); 这样的类。您正在创建一个对象
-
这称为自动装箱,当您编写
Integer i = 5;时,您的编译器在编译时将其更改为Integer i = Integer.valueOf(5); -
虽然这个问题只需要简单的研究,但投票并不是鼓励新用户的方式。你为什么不发表评论?
-
对不起@Andrew 我弄错了。这可能是一个有用的链接stackoverflow.com/questions/9030817/…