Est-ce que null est un Object
en Java?
Réponses
Trop de publicités?Si la valeur null est un Objet, il serait en charge les méthodes d' java.lang.Object
comme equals()
. Cependant, ce n'est pas le cas de tout appel de méthode sur un nul résultats en NullPointerException
.
Et c'est ce que le Java Language Specification a à dire sur ce sujet:
Il y a aussi un spécial de type null, l' type de l'expression est null, ce qui a pas de nom. Parce que le type null n'a pas de nom, il est impossible de déclarer une variable de type null ou à jeter pour le type null. La référence null est la seule valeur possible d'un expression de type null. La valeur null de référence peut toujours être converti en tout type de référence. Dans la pratique, l' programmeur peut ignorer le type null et juste faire semblant que null est simplement un spécial littérale qui peut être de n'importe quel type de référence.
Je pense que cela peut se résument à "null est spécial".
Selon la spécification Java, null
est un type pouvant être affecté à une variable d'objet (en tant que valeur indiquée dans le commentaire). Vous ne pouvez pas instancier ni créer de variables de ce type, vous devez utiliser la variable spéciale null
fournie par le compilateur.