任何人都可以向我解释这个测试:
assertTrue(Number.class.isAssignableFrom(long.class)); //---> FAILED
assertTrue(Number.class.isAssignableFrom(Long.class)); //---> PASSED
那么long.class
和 和有什么不一样Long.class
?
任何人都可以向我解释这个测试:
assertTrue(Number.class.isAssignableFrom(long.class)); //---> FAILED
assertTrue(Number.class.isAssignableFrom(Long.class)); //---> PASSED
那么long.class
和 和有什么不一样Long.class
?
In Java long
and Long
are different types. The first one is a primitive and the second one is a class.
Long
extends Number
, but long
doesn´t.
在 Java 中,类名区分大小写,通常以大写字母开头。Long 是 Java 中的一个类(称为包装类),但 long 不是。没有 long.cass !
long 是一个原始的。这意味着您只有变量和一些操作,如 +/-*=。Long 是一个内部有一个长数字的类,除了像 idk 这样的运算符之外还有一些函数... ToString() (查看javadoc)。在类中包装长原语使其成为包装类