Java-Programm mit Argumenten starten: Unterschied zwischen den Versionen

Aus Byte-Welt Wiki
Zur Navigation springenZur Suche springen
K
K (Start mit Argumenten)
Zeile 12: Zeile 12:
  
 
Im obigen Beispiel des Aufrufs des Java-Interpreters werden keine Argumente für die main()-Methode mitgegeben. Das wollen wir jetzt nachholen und schauen uns einen Aufruf mit Übergabe von Argumenten an:
 
Im obigen Beispiel des Aufrufs des Java-Interpreters werden keine Argumente für die main()-Methode mitgegeben. Das wollen wir jetzt nachholen und schauen uns einen Aufruf mit Übergabe von Argumenten an:
<code=ini>java HelloWorld Byte-Welt Besucher</code=ini>
+
java HelloWorld Byte-Welt Besucher
 
Direkt nach dem Klassennamen des zu startenden Programms werden also eins oder mehrere von einem Leerzeichen getrennte Argumente übergeben.
 
Direkt nach dem Klassennamen des zu startenden Programms werden also eins oder mehrere von einem Leerzeichen getrennte Argumente übergeben.
  

Version vom 8. März 2018, 20:15 Uhr

Bereits bem Start eines Java-Programms kann man durch Übergabe von Argumenten Daten in das Programm einschleusen, die es verarbeiten kann.

Start mit Argumenten

Ein Java-Programm wird durch Aufruf des Java-Interpreters gestartet, dem man den Klassennamen der Klasse übergibt, die die main()-Methode enthält. Beispielhaft daher hier noch mal ein Aufruf: <code=ini>java HelloWorld</code=ini>

Die main()-Methode stellt für die Eingabe von Argumenten ein String-Array bereit. Schauen wir uns noch einmal die Signatur der main()-Methode an:

public static void main(String[] args)

Sie ist public, damit auf sie von überall auf sie zugegriffen werden kann. Sie ist static, weil zum Zeitpukt des Programmstarts noch keine Objekte instanziiert wurden, auf denen Methoden aufgerufen werden könnten. Sie liefert nichts (void) zurück.

Sie erwartet optional in ihrer Methodensignatur ein String-Array, welches oftmals args benannt wird. Der Name des Arrays spielt keine Rolle. Genauso gut könnte er auch eingabe lauten.

Im obigen Beispiel des Aufrufs des Java-Interpreters werden keine Argumente für die main()-Methode mitgegeben. Das wollen wir jetzt nachholen und schauen uns einen Aufruf mit Übergabe von Argumenten an:

java HelloWorld Byte-Welt Besucher

Direkt nach dem Klassennamen des zu startenden Programms werden also eins oder mehrere von einem Leerzeichen getrennte Argumente übergeben.

Programmcode mit Verarbeitung von Argumenten

Im vorigen Kapitel haben wir einen Aufruf eines Java-Programms mit Übergabe von Argumenten gesehen. Schauen wir uns den möglichen Code des Java-Programms mit Verarbeitung der Argumente dazu an.

public class HelloWorld { //unsere HelloWorld-Klasse
   public static void main(String[] args) { //unsere main()-Methode

      //Verarbeitung von Argumenten
      if(args.length == 2) {
         System.out.println("Hallo "+args[1]+", willkommen bei "+args[0]+"!");
      }
      else {
         System.out.println("Hello World!");
      }

   }
}

Wenn wir nun das Programm kompilieren und ohne Argumente ausführen, erhalten wir folgende Ausgabe: <code=ini>Hello World!</code=ini>

Wenn wir nun beim Start das obige Beispiel des Aufrufs mit zwei Argumenten verwenden und diese mit in die/das Kommandozeile/Eingabeaufforderung/Terminal eintippen, erhalten wir: <code=ini>Hallo Besucher, willkommen bei Byte-Welt!</code=ini>

Beispiel 2 - Consolenrechner

In einem zweiten Beispiel, werden wir einen einfachen Rechner für die 4 Grundrechenarten auf der Kommandozeile programmieren.


Fragen

Das Thema wurde nicht ausreichend behandelt? Du hast Fragen dazu und brauchst weitere Informationen? Lass Dir von uns helfen!

Wir helfen dir gerne!


Dir hat dieser Artikel gefallen? Oder Du hast Fehler entdeckt und möchtest zur Berichtigung beitragen? Prima! Schreibe einen Kommentar!

Du musst angemeldet sein, um einen Kommentar abzugeben.