1

我以为我了解类(对象)类的概念,但是在 Java API 中阅读它时,我发现了这一点:

原始 Java 类型(boolean、byte、char、short、int、long、float 和 double)和关键字 void 也表示为 Class 对象。

4

2 回答 2

2

autoboxing上的现象unboxing就是你要找的。在 java 中有一些用于舒适目的的原语。他们都有wrapper课。它们是:IntegerDoubleBoolean

自动装箱负责将primitives 包装成Wrappers 每次Wrapper预期但 aprimitive被传递。另一方面,拆箱来了。当它是primitive预期但Wrapper通过的拆箱将设法提取正确的值。

这里描述得很好

例子:

Integer one = new Integer(1);
int i = one.intValue();

void printInteger(int i) {
    System.out.println(i);
}

printInteger(one);

不会抛出异常 -one将被拆箱int并打印。

于 2016-08-09T11:43:04.570 回答
-1

不同之处在于原语只是内存区域,当您使用密钥时,您告诉编译器如何“查看”这些区域。而对应的对象(例如 Integer 或 Character)是具有处理这些类型的方法的对象,它们被视为对象

于 2016-08-09T11:49:40.203 回答