Der Rückgabetyp - der Datentyp des von der Methode zurückgegebenen Werts oder void, wenn die Methode keinen Wert zurückgibt.
Okay, dann .. Hier ist meine Frage:
%Vor%Der obige Code funktioniert nicht ohne void.
%Vor%Was habe ich verpasst? Warum ist dort eine Leere? Und es gibt eine Zeichenfolge zurück?
Der Grund, warum der Code nicht ohne void
funktioniert, liegt darin, dass die Methode System.out.println(String string)
nichts zurückgibt und die angegebenen Argumente nur an das Standard-Ausgabegerät, das in den meisten Fällen der Computerbildschirm ist, ausgibt. Wenn eine Methode "nothing" zurückgibt, müssen Sie dies angeben, indem Sie das Schlüsselwort void
in die Signatur einfügen.
Sie können die Dokumentation von System.out.println hier sehen:
Um das Problem weiter zu untersuchen, ist println ein klassisches Beispiel für eine Methode, die Berechnungen als "Nebeneffekt" ausführt.
Sie meinen die Methode tellItLikeItIs
? Ja, Sie müssen void
angeben, um anzugeben, dass die Methode nicht zurückgibt. Alle Methoden haben , um einen Rückgabetyp anzugeben, auch wenn es void
ist.
Es gibt keinen String zurück - schau, es gibt keine Rückgabeanweisungen. Es ist nicht wirklich klar, warum du denkst, dass eine Zeichenkette zurückgibt. Es gibt Zeichenfolgen auf der Konsole aus, aber das ist nicht das Gleiche wie das Zurückgeben einer Zeichenfolge aus der Methode.
Leere gibt nichts zurück; Es teilt dem Compiler mit, dass die Methode keinen Rückgabewert hat.
void
bedeutet, dass nichts zurückgegeben wird. Es gibt keine Zeichenfolge zurück, Sie schreiben eine Zeichenfolge in System.out
, aber Sie geben keine zurück.
Sie müssen angeben, was eine Methode zurückgibt, auch wenn Sie nur sagen, dass sie nichts zurückgibt.
Technisch gesehen könnten sie die Sprache so entworfen haben, dass, wenn Sie keinen Rückgabetyp schreiben, angenommen wird, dass nichts zurückgegeben wird, aber das explizite Schreiben von void
hilft sicherzustellen, dass das Fehlen eines zurückgegebenen Werts beabsichtigt ist und nicht zufällig.
Void: Der Typmodifikator void gibt an, dass die Hauptmethode keinen Wert zurückgibt. Alle Parameter einer Methode werden innerhalb einer Klammer vor Klammern deklariert. Hier deklariert String args [] einen Parameter namens args, der ein Array von Objekten des Klassentyps string enthält.