¿Por qué los tipos de datos primitivos no pueden ser "nulos" en Java?

Al declarar cualquier tipo de datos primitivos comoint odouble se inicializan a0 o0.0. ¿Por qué no podemos ponerlos anull?