Class Java不是纯粹面向对象的-这意味着什么w.r.t primitve类型?
当我看Class.java的javadocs时,它说:Class Java不是纯粹面向对象的-这意味着什么w.r.t primitve类型?,class,primitive-types,Class,Primitive Types,当我看Class.java的javadocs时,它说: /*The primitive Java types ({@code boolean}, * {@code byte}, {@code char}, {@code short}, * {@code int}, {@code long}, {@code float}, and * {@code double}), and the keyword {@code void} are also * represented as {@code
/*The primitive Java types ({@code boolean},
* {@code byte}, {@code char}, {@code short},
* {@code int}, {@code long}, {@code float}, and
* {@code double}), and the keyword {@code void} are also
* represented as {@code Class} objects.
*/
我一直听说Java中的基本类型不是类/对象,因此Java不是纯粹面向对象的。但是上面的JavaDoc让我很困惑。不要被术语“表示”弄糊涂,把“类型”和“值”搞得一团糟。表示是由Java虚拟机创建的,它们不是为每个基本体值实例化的(这可能是,尽管有些实例是缓存的): 有九个预定义的类对象来表示这八个类 基元类型和void。这些是由Java虚拟机创建的 ,并与它们所使用的基元类型具有相同的名称 表示,即boolean、byte、char、short、int、long、float和 加倍 这些对象只能通过以下公共静态 final变量和是唯一使用此方法的类对象 返回true