Da "Primitive Data Types": "I tipi primitivi sono tipi di dati speciali integrate nel linguaggio, sono non oggetti creati da una classe. " Questo, a sua volta, significa che no, int
non eredita da java.lang.Object in alcun modo perché solo "oggetti creati da una classe" lo fanno. Considerate:
int x = 5;
Affinché la cosa nominata x
di ereditare da Object, che cosa avrebbe bisogno di avere un tipo. Nota che sto distinguendo tra lo x
e la cosa che nomina. x
ha un tipo, che è int
, ma la cosa denominata x
è il valore 5, che non ha tipo in sé e per sé. Non è altro che una sequenza di bit che rappresenta il valore integrale "5". Al contrario, in considerazione:
java.lang.Number y = new java.lang.Integer(5);
In questo caso, y
ha il numero del tipo, e la cosa nominata y
ha il tipo Integer. La cosa chiamata è un oggetto. Ha un tipo distinto indipendentemente dallo o da qualsiasi altra cosa.
fonte
2011-10-09 00:26:20
Quindi stai dicendo oggetto = tipo di riferimento? – soandos
@soandos: sì. Tutte le istanze di classe in Java sono tipi di riferimento. – siride