Search code examples
javainheritanceprimitive

Is int an object in Java?


More precisely, is int a part of the Integer class (a stripped down version or something) or is it something else entirely?

I am aware that int is a value type and Integer a reference type, but does int inherit from Object anyway?

(I am assuming that in this regard int, long, boolean etc are all similar. int was just chosen for convenience)


Solution

    • The basic types in Java are not objects and does not inherit from Object.

    • Since Java 1.5 introduced allowed auto boxing between int and Integer(and the other types).

    • Because ints aren't Objects that can't be used as generic type parameters eg the T in list<T>