Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

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)

like image 877
soandos Avatar asked Oct 09 '11 00:10

soandos


2 Answers

  • 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>

like image 125
mikek3332002 Avatar answered Oct 15 '22 15:10

mikek3332002


If you talk about Integer:

The Integer class wraps a value of the primitive type int in an object. An object of type Integer contains a single field whose type is int.

In addition, this class provides several methods for converting an int to a String and a String to an int, as well as other constants and methods useful when dealing with an int.

int is not object, its a primitive type.

like image 20
Racooon Avatar answered Oct 15 '22 17:10

Racooon