Maison > Java > javaDidacticiel > Pourquoi Java génère-t-il une erreur « Type « vide » non autorisé ici » ?

Pourquoi Java génère-t-il une erreur « Type « vide » non autorisé ici » ?

Mary-Kate Olsen
Libérer: 2024-11-17 13:33:01
original
1062 Les gens l'ont consulté

Why Does Java Throw a

Dévoilement du mystère derrière l'erreur « Type 'void' non autorisé ici"

La rencontre de l'erreur « Type vide non autorisé ici » peut être déroutant. Pour comprendre sa signification, examinons son contexte.

Considérez l'extrait de code ci-dessous :

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);
        // This line generates the error
        System.out.println(printPoint(blank));
    }
}
Copier après la connexion

Lorsque vous essayez de compiler ce code, vous rencontrez le message d'erreur :

obj.java:12: 'void' type not allowed here
        System.out.println(printPoint(blank));
                                               ^
1 error
Copier après la connexion

Qu'est-ce qui ne va pas ?

La racine de l'erreur réside dans la méthode printPoint. Sa déclaration précise qu'il renvoie void, ce qui signifie qu'il ne renvoie aucune valeur. Par conséquent, la tentative de la méthode principale d'imprimer la valeur de retour de printPoint (qui est void) entraîne l'erreur « type vide non autorisé ici ».

Que signifie le message d'erreur ?

Le message d'erreur indique clairement que le type de retour d'une méthode détermine ce qui peut être fait avec sa valeur de retour. Dans ce cas, puisque la méthode printPoint renvoie void, sa valeur de retour ne peut pas être imprimée à l'aide de System.out.println().

La solution

Pour remédier à ce problème , vous devez modifier votre code pour éliminer l'impression inutile de la valeur de retour printPoint. Au lieu de cela, vous devez appeler directement la méthode printPoint comme suit :

printPoint(blank);
Copier après la connexion

Cela éliminera l'incompatibilité de type et permettra au code de se compiler et de s'exécuter correctement.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal