如果Object是所有东西的超类,那为什么它会对原语不同?是否为int,float ...(数据类型)预定义了任何类?什么是超类或基元的类定义在哪里?
答案 0 :(得分:5)
Java基元没有类定义。然而,有一些便利类可以作为原语的包装,例如: Integer
和Double
。但即使这些也来自Object
答案 1 :(得分:3)
Java是一种面向对象的语言,每件事物都是一个对象
the simple file treated as an object java.io.File
and address of a system as an object java.util.URL
Image can be treated as an Object java.awt.image
every thing is an object in java BUT
The wrapper class are used to convert any data type in to an object.
SO REMEMBER THAT
the primitive data type is not an object and they do not belong to any class
Primitive data type are define in the language itself.
you can see the Wrapper class hierarchy
请参阅包装类的层次结构。
答案 2 :(得分:1)
我认为你很困惑,Java中有两种变量:引用类型和基本类型。引用类型是对对象的引用。 Primitive Types包含价值。
因此,如果您想使用Integer
类将int
数据类型用作无符号整数。类似地,Long class
还包含compareUnsigned,divideUnsigned等方法,以支持unsigned long的算术运算。
所以结论是Java原语没有类,原始类型不是对象。