Maison >Java >javaDidacticiel >Pourquoi Java génère-t-il une erreur « Type « vide » non autorisé ici » lorsque vous essayez d'imprimer le résultat d'une méthode Void ?

Pourquoi Java génère-t-il une erreur « Type « vide » non autorisé ici » lorsque vous essayez d'imprimer le résultat d'une méthode Void ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-11-10 22:20:03239parcourir

Why Does Java Throw a

Comprendre l'erreur « Type 'void' non autorisé ici »

Lorsque vous essayez de compiler du code impliquant des méthodes, vous pouvez rencontrer l'erreur « Le type 'void' n'est pas autorisé ici." Cette erreur provient d'une mauvaise compréhension de la façon dont les méthodes et les types void interagissent.

Le type Void expliqué

En Java, les méthodes peuvent avoir différents types de retour, y compris void. Une méthode void ne renvoie aucune valeur et effectue simplement des actions. En revanche, les méthodes avec un type de retour non nul (tel que int, String ou Point) produisent une valeur qui peut être affectée à une variable ou utilisée dans une expression.

Le contexte de l'erreur

Considérez l'extrait de code suivant :

import java.awt.*;

class obj {
    public static void printPoint(Point p) {
        System.out.println("(" + p.x + ", " + p.y + ")");
    }

    public static void main(String[] arg) {
        Point blank = new Point(3, 4);
        System.out.println(printPoint(blank));
    }
}

Ici, une tentative est faite pour imprimer le résultat de l'appel de la méthode printPoint. Cependant, la méthode printPoint est définie comme void, ce qui signifie qu'elle ne renvoie aucune valeur. Par conséquent, la ligne tentant d'imprimer le résultat (System.out.println(printPoint(blank))) déclenchera l'erreur « Type 'void' non autorisé ici".

Résoudre l'erreur

Pour résoudre cette erreur, vous devez supprimer la tentative d'impression du résultat de la méthode printPoint. Au lieu de cela, appelez simplement la méthode directement :

printPoint(blank);

En appelant la méthode printPoint sans tenter d'attribuer son résultat à une variable ou de l'utiliser dans une expression, vous évitez l'utilisation incorrecte du type void.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn