12 votes

Sur le type de retour Void

Si l'on doit retourner un Void que Javadoc décrit comme

Une classe qui est un placehol insignifiant. référence à l'objet Classe représentant le mot-clé Java void.

Pourquoi les éléments suivants nécessitent-ils toujours null à rendre ?

public Void blah() {
    return null; // It seems to always want null
}

20voto

NPE Points 169956

Void est une classe comme une autre, donc une fonction renvoyant Void doit retourner une référence (telle que null ). En effet, Void es final et indéfectible, ce qui signifie que null est la seule chose qu'une fonction retournant Void pourrait revenir.

Bien sûr. public void blah() {...} (avec une minuscule v ) n'a pas à retourner quoi que ce soit.

Si vous vous interrogez sur les utilisations possibles de la Void voir Utilisations du type de référence Java Void ?

4voto

Peter Lawrey Points 229686

Void est l'objet "enveloppant" pour l'objet void type. Un type de retour de void ne renvoie pas de valeur de retour mais Void fait. Vous ne pouvez pas utiliser void ou tout type primitif dans un générique.

3voto

Óscar López Points 97105

Le mot clé correct en Java est void pas Void (remarquez l'utilisation des minuscules au début). Void (en majuscules) est, selon l' documentation :

La classe Void est une classe de remplacement non substantielle qui contient une référence à l'objet Class représentant le mot-clé Java void.

1voto

Thomas Points 35713

Comme le dit le document, c'est un classe de remplacement non substantielle donc vous ne pouvez pas obtenir une instance, mais vous devez retourner quelque chose puisque Void != void . Void est en fait un classe et donc traitée comme toute autre classe/type qui nécessite une instance ou null pour être retournée.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X