il tipo primitivo non è un oggetto e non è un derivato da object.
E' la rappresentazione dei comuni tipi di dati a tutti i linguaggi.
Dalla versione 6 di java

codice:
int test = 4; 

if (test instanceof Integer) System.out.println("true");
else System.out.println("false");
dovresti avere true visto che c'è il boxing/unboxing automatico dei tipi primitivi