„Hallo Amigo! Ich habe ein weiteres kleines und interessantes Thema für dich. Der Void-Typ.“

„Und warum brauchen Sie einen solchen Typ? Ich meine, ich verstehe void: Es geht darum, Funktionen und Prozeduren in Einklang zu bringen. Wir haben keine Prozeduren, aber wir haben Funktionen, die void (nichts) zurückgeben.“

„Ja, aber erinnerst du dich daran, dass Ellie dir kürzlich von der Callable-Schnittstelle erzählt hat?“

"Ja."

„Und erinnern Sie sich auch daran, was Sie als Typargument übergeben müssen?“

„Ja, der Typ des Rückgabewerts:“

Beispiel für eine Aufgabe, die nichts bewirkt:
class EmptyJob implements Callable
{
 public String call() throws Exception
 {
  return null;
 }
}

„Richtig. Und was ist, wenn Sie möchten, dass die Aufrufmethode ein int zurückgibt? Was dann?“

„Jetzt weiß ich, dass es dafür Autoboxing gibt. Ich würde einfach eine Ganzzahl übergeben und alles wird wie am Schnürchen laufen:“

Beispiel für eine Aufgabe, die nichts bewirkt:
class EmptyJob implements Callable
{
 public Integer call() throws Exception
 {
  return null;
 }
}

„Ausgezeichnet. Und was, wenn die Methode nichts zurückgeben sollte?“

„Ich verstehe, was Sie meinen. Dann verwenden wir Void als Gegenstück zu Void?“

"Ja."

„Wäre es nicht einfacher, den Rückgabewert einfach zu einem Objekt zu machen und dann null zurückzugeben?“

„Manchmal, aber nicht immer.“

„Sie wissen, dass Sie hier eigentlich void zurückgeben wollten, als Sie Object geschrieben haben, aber ein anderer Programmierer weiß das vielleicht nicht und wird sich fragen, warum Sie null zurückgeben.“

„Oder der Code, der die Methode aufruft, erwartet einen Rückgabewert.“

„Aber wenn man Void schreibt, versteht jeder sofort, dass dies ein Wrapper für void ist, auch wenn man immer noch null zurückgeben muss.“

Beispiel für eine Aufgabe, die nichts bewirkt:
class EmptyJob implements Callable
{
 public Void call() throws Exception
 {
  return null;
 }
}

„Hmm. Du hast Recht. Eine Methode, die immer Null zurückgibt, wirft Fragen auf. Aber die als Void deklarierte Methode kann dies tun, ohne dass es einer weiteren Erklärung bedarf.“

„Die Lesbarkeit des Codes steht an erster Stelle. Ich mag Java!“

„Großartig. Ich freue mich, dass es dir gefällt. Für heute sind wir fertig.“