Fehler Void Type Not Allowed Here in Java beheben
-
Was ist der Fehler
void type not allowed here
? -
Behebung des Fehlers
Void Type Not Allowed Here
in Java - Nicht in der Methodemain()
drucken -
Behebung des Fehlers
Void Type Not Allowed Here
in Java - Geben Sie eine Zeichenfolge zurück, anstatt inprintMessage1()
zu drucken
Wir verwenden viele Funktionen, wenn wir große Programme in Java erstellen, und manchmal können Fehler auftreten. Einer der Fehler, die der Compiler auslösen kann, ist der in diesem Artikel beschriebene Fehler void type not allowed here
.
Was ist der Fehler void type not allowed here
?
Wir erstellen eine Funktion in Java, indem wir den Zugriffsmodifikator, einen Rückgabetyp, einen Funktionsnamen in Klammern schreiben und den Funktionskörper in geschweiften Klammern einschließen. Wir können mehrere Datentypen von einer Funktion zurückgeben, aber wenn wir keine zurückgeben möchten, verwenden wir das Schlüsselwort void
, um dem Compiler mitzuteilen, dass wir nichts von der Methode zurückgeben möchten.
Im folgenden Programm haben wir eine Klasse JavaExample
, die zwei Methoden enthält, die erste ist die Funktion main()
und die zweite ist die Funktion printMessage1()
, die eine Druckanweisung System.out.println()
hat, die eine Nachricht druckt, die printMessage1()
als Parameter erhält.
Die Funktion printMessage1()
gibt nichts zurück und druckt nur eine Nachricht; Als Rückgabetyp verwenden wir den Typ void
. Wir verwenden eine andere print-Anweisung, aber in der Methode main()
und rufen darin die Funktion printMessage1()
mit String 1
als Argument auf.
Wenn wir den Code ausführen, gibt die Ausgabe einen Fehler aus: void type not allowed here
. Das passiert, weil printMessage1()
bereits eine print-Anweisung hat, die den value
druckt, und nichts zurückgibt, wenn wir die Funktion in einer print-Anweisung aufrufen; In der Methode main
gibt es nichts zu drucken.
public class JavaExample {
public static void main(String[] args) {
System.out.println(printMessage1("String 1"));
}
static void printMessage1(String value) {
System.out.println(value);
}
}
Ausgabe:
java: 'void' type not allowed here
Behebung des Fehlers Void Type Not Allowed Here
in Java - Nicht in der Methode main()
drucken
Die erste Lösung für diesen Fehler besteht darin, dass wir die Funktion printMessage1()
nicht in einer Druckanweisung aufrufen, da in der Methode selbst bereits eine System.out.println()
-Anweisung vorhanden ist und diese nichts zurückgibt.
In diesem Code schreiben wir den Körper der Funktion printMessage1()
als println()
-Anweisung. Wir rufen die Methode printMessage1()
in main()
mit einem String als Argument auf.
public class JavaExample {
public static void main(String[] args) {
printMessage1("String 1");
}
static void printMessage1(String value) {
System.out.println(value);
}
}
Ausgabe:
String 1
Behebung des Fehlers Void Type Not Allowed Here
in Java - Geben Sie eine Zeichenfolge zurück, anstatt in printMessage1()
zu drucken
Die zweite Lösung besteht darin, einen Rückgabetyp in der Funktion anzugeben, einen Wert zurückzugeben und ihn überall dort auszugeben, wo wir die Funktion aufrufen.
Wir schreiben die Methode printMessage1()
, aber mit einem Rückgabetyp String
. Innerhalb des Methodenkörpers verwenden wir das Schlüsselwort return
mit dem value
, den wir beim Aufruf zurückgeben wollen. In der Methode main()
rufen wir die Funktion printMessage1()
in eine Druckanweisung auf, aber es tritt kein Fehler auf, da die Methode einen Wert zurückgibt.
public class JavaExample {
public static void main(String[] args) {
System.out.println(printMessage1("How are you doing today?"));
System.out.println(printMessage1("String 2"));
}
static String printMessage1(String value) {
return value;
}
}
Ausgabe:
How are you doing today?
String 2
Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.
LinkedIn