Skip to main content

Von Java Klassen zum Java Programm – Der Programmstart

In den letzten Beiträgen hast du gelernt, wie Java Klassen erstellt werden und aufgebaut sind.
In diesem Beitrag geht es um den Programmstart.

Ich will dir zeigen, was nötig ist, dass du ein Java Programm ausführen kannst.
Und ich zeige dir außerdem, wie du eine Startklasse in einem x-beliebigen Javaprogramm anlegst.

Wie auch schon zuvor, bleibe ich auch in diesem Artikel beim Einführungsbeispiel – dem Java Adventure.

In diesem Einführungsprojekt hast du bis jetzt 8 Klassen angelegt.

Java Klassen Uebersicht 8 Klassen

Falls du diese noch nicht angelegt haben solltest, ist das kein Problem.
Du kannst den Programmstart auch einfach so oder mit deinem eigenen Projekt nachvollziehen.

Also legen wir los.. 🙂

Hier ist das entscheidende Element um aus Java Klassen heraus Programme auszuführen.

Es ist eigentlich äußerst simpel.
Um irgendein Java Programm zu starten, brauchst du eine Startmethode.

Diese Startmethode heißt main-Methode.
Und so sieht diese aus:


	public static void main(String[] args) {
		
	}

Schauen wir uns diesen Code genauer an.

  • Die Methode beginnt mit dem Keywort public.
    Dieses Keywort legt fest, dass diese Methode öffentlich ist.
    Die Methode kann also von jeder Klasse genutzt werden. (Dazu unten mehr)
  • Das Keywort static legt fest, dass es sich um eine Klassenmethode handelt.
    In Java gibt es Objekte und diese nutzen individuelle Instanzmethoden.
    Klassenmethoden hingegen dienen dem Programm und nicht zwingend einem Objekt.
  • Dann folgt void.
    Dieses Keywort legt fest, dass die Methode nichts zurückgibt.
    Normalerweise liefert jede Methode einen Wert, eine Zahl, ein Text usw.
    Diese Methode liefert nichts- und deshalb void.
  • Dann folgt der Name der Methode: main.
  • Zum Schluss befindet sich in der Klammer ein Parameter.
    Dieser dient dazu, dass du der Methode beim Start eine Zahl oder Ähnliches mitgeben könntest.
    Und diese Zahl oder was auch immer, könnte die Methode auswerten, weiter verarbeiten oder umwandeln.

Das Ganze wirkt erst einmal enorm viel.

Ich beruhige dich:
Du musst dies Alles nicht sofort wissen.
Wenn du erst einmal länger in Java programmierst, speichert sich dieses Wissen von selbst.

Was du allerdings mitnehmen solltest:
Die main-Methode brauchst du immer zum Starten eines Programmes.

Und so werden aus normalen Java Klassen – Klassen welche ein Programm ausführen

Ich beginne einfach mal bei der Klasse „Held“.
Und implementiere die main-Methode.

Ja und wie?
Hier erst einmal der Code.
Ich sage gleich mehr dazu.


public class Held {

	public static void main(String[] args) {
		
	}
}

Eigentlich brauchst du nur meinen Code kopieren oder abschreiben und in deine Klasse einfügen.

Was gilt es dabei zu beachten?
Du musst die Hierarchieebene beachten.
Und zwar muss die Methode innerhalb der Klassengrenzen gesetzt werden.

Java Klassen Rumpf

Die zwei äußeren Klammern bilden die Grenzen der Java Klasse.
Und innerhalb dieser Grenzen muss, alles rein – was zu dieser Klasse gehört.
Die main-Methode gehört zu dieser Klasse und befindet sich somit im Rumpf der Klasse.
(Zwischen den Klammern).
Java-Klassen-Klassengrenzen-Main-Methode

Die Methode hat ebenfalls einen Rumpf.
Auch dieser Rumpf wird durch eine öffnende Klammer geöffnet und durch die schließende Klammer geschlossen.
Somit sind die Grenzen der Methode ebenfalls klar definiert.

Java main Methode Grenzen

Alles was die Methode machen soll, kommt dann in den Rumpf der Methode.

Und das war es eigentlich schon.
Wenn du jetzt das Programm ausführen würdest, würde nichts passieren.
Nicht weil die Methode falsch angelegt ist oder sich in der falschen Klasse befindet.

Es steht nichts drin.
Im Rumpf der Methode befindet sich keine Anweisung.

Das ändern wir.
Und zwar kommt dort eine Konsolenausgabe hinein.
Der Code dazu lautet:
System.out.println("Dies ist die Heldenklasse!");

Und so sollte dies jetzt bei dir aussehen.


public class Held {

	public static void main(String[] args) {
		System.out.println("Dies ist die Heldenklasse!");
	}
}

Worauf ist zu achten?

  • Diese System.out.println()-Befehl ist eine sogenannte Anweisung.
  • Hinter jede Anweisung muss ein Semikolon.
  • Innerhalb der Klammer kannst du jeden Textwert eingeben, den du willst.
  • Wichtig ist, dass du Text in Anführungsstriche setzt.

Jetzt lass uns dieses Programm endlich starten.

Ganz oben in der Menüleiste befindet sich ein Button „Run“.
Klicke dort drauf und du wirst gefragt, ob du speichern möchtest.
Dies bestätigst du und das Programm läuft.

Java Klassen ausführen Ablauf

Ganz unten siehst du die Konsolenausgabe mit deinem Text.
Programmstart-mit-Konsolenausgabe.png“ alt=“Java Programmstart mit Konsolenausgabe“ width=“720″ height=“404″ class=“alignleft size-full wp-image-1971″ />

Das war es.
Du hast ein Programm ausgeführt.

Später kannst du dann natürlich größere Programmstrukturen integrieren.
Auf genau die gleiche Art und Weise.
Für den Anfang reicht es aus. 🙂

Den Programmstart kannst du in allen Java Klassen einfügen.

Was hier geht – geht auch woanders.
Die main-Methode kannst du in jede Klasse einbinden.

Dadurch entstehen mehrere ausführbare Klassen.
Also Miniprogramme, welche parallel ausgeführt werden könnten.

So wie hier:

Java Klassen main-Methoden

Wichtig ist, dass du immer die main-Methode brauchst, um ein Java Programm zu starten.
Du in jeder x-beliebigen Klasse eine main-Methode anbieten könntest.
Und somit x-beliebig viele Programme innerhalb eines Projektes hättest.

Und das mache ich jetzt.
Ich lasse den Programmstart in der Heldenklasse.
Und ich lege in der Monsterklasse einen weiteren Programmstart an.

Dazu bräuchte ich nur die main-Methode, innerhalb der Klassengrenzen setzen.
Es gibt aber einen Trick, wie hier im Bild:

Java main Methode Liste

  • Schreibe main
  • Drücke zeitgleich Steuerung+Leertaste.
    Und diese Auswahlliste erscheint.
  • Wähle dann die main-Methode aus der Liste.
  • Fertig.

Und in dieser main-Methode (innerhalb der Klammern) platziere ich jetzt wieder eine Bildschirmausgabe:

Java Sysout

  • Auch hier reicht es aus, sys zu schreiben.
  • Dann Steuerung+Leertaste drücken
  • Die Anweisung „sysout“ auswählen.
  • Fertig.

In die Klammer kannst du jetzt wieder einen individuellen Text platzieren.
Denke an die Anführungsstriche.
Und fertig ist das zweite Programm.

Und jetzt kannst du auf „RUN“ klicken und auch dieses Programm ausführen.
Wähle danach die Held-Klasse und klicke auf „Run“ und auch dieses Programm wird ausgeführt.
Cool, oder?

Aber eigentlich trennt man die Starterklasse von den Objektklassen.
Und das solltest du auch tun.

Wir haben im Java Adventure 8 Klassen vorgesehen.
Eine davon heißt Programmstart.

Und diese erstellen wir jetzt noch.

Und so kannst du die Programmstart-Klasse anlegen.

Natürlich geht es so, dass du:

  • Die Programmstartklasse erstellst
  • und dann die main-Methode dort platzierst.

Du kannst das Ganze aber schon beim Klassen-Erstellungs-Prozess vollziehen.

Und zwar so:
Wenn du eine neue Klasse anlegst, hast du die Möglichkeit die main-Methode gleich dazu zu bekommen.

Dazu musst du bei der Methodenauswahl den Haken setzen.

Programmstart-integrieren.png“ alt=“Java Klassen Programmstart integrieren“ width=“720″ height=“517″ class=“alignleft size-full wp-image-1975″ />

Klickst dann auf Finish.
Und fertig ist die Programmstart-Klasse.

Zusammenfassung:

  • Du kannst aus jeder Klasse eine Programmstart-Klasse machen.
    Dazu musst du in den entsprechenden Java Klassen die main-Methode einfügen.
  • Achte bitte darauf, dass sich die main-Methode im Klassenrumpf befindet.
  • Sämtlicher Code, welcher sich im Rumpf der main-Methode befindet wird zum Programmstart ausgeführt.