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.
Java Programmstart mit Konsolenausgabe

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.

Java Klassen Programmstart integrieren

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.

Ähnliche Beiträge

Java Übung 11 – Java Objekte in Java Methoden übergeben

Java Übung Java Methoden Objekte

In dieser Java Übung möchte ich dir zeigen, dass du auch in Klassenmethoden auf Objekte und deren Instanzvariablen zugreifen kannst. Schau dir dazu einmal diesen Java Code an. public class Umwandlung { private int x; public int getX() { // getter Methode return x; } public void setX(int x) { // setter Methode this.x = […]

So kannst du in drei einfachen Schritten Java Arrays dynamisch vergrößern

Java Arrays vergrößern

Es ist der 31.März 1727. Es ist ein Montag. Die Welt nimmt Abschied von einem sehr bedeutenden Weltveränderer. Seine Sichtweisen beeinflussen, heute noch, die Forschung und Entwicklung im Bereichen der Physik und Chemie. Ja selbst unser aller Leben – unsere Sicht auf die alltäglichen Dinge – wurden durch seine Denkstöße revolutioniert. Dieser große Vorreiter starb […]

10 ganz nützlichen Feature der Klasse Java Math

In diesem Beitrag geht es um eine spezielle Java Klasse. Die Klasse nennt sich Java Math. Diese ist in der Standardbibliothek von Java enthalten. Warum solltest du diese Klasse kennen? Die Math Klasse bietet dir einen Menge Methoden an, welche zur Berechnung von mathematischen Gleichungen ganz hilfreich sind. Aber auch für Nichtmathematiker ist etwas dabei. […]

So implementierst du Instanzmethoden in deine Java Klasse

Java Instanzmethoden

In einen der letzten Beiträge habe ich dir gezeigt, wie du eine Klasse anlegen kannst. Ich habe die Klasse „Mensch“ oder „Human“ angelegt und wir haben die erste Instanzvariable implementiert. Dein Code sollte jetzt so aussehen: public class Human { int size=156;//size in centimeter } In diesem Beitrag werde ich dir zeigen, wie du Java […]

3 Möglichkeiten – Java Strings verketten und zusammenfügen

Java Strings verketten

Kennst du dieses Relikt längst vergangener Tage? Ein Brief. Ja früher einmal war es üblich, Briefe zu schreiben. Lange bevor es Smartphones oder Email gab. Man stelle sich einmal vor…. Die Leute mussten sich hinsetzen mit einem Blatt und einem Stift – und richtig schreiben. Nein nicht tippen – schreiben. 🙂 Grausame Welt, oder? Aber […]

Die drei Bestandteile aller Java Klassen

Java Klassen Bestandteile

Java ist eine objektorientierte Programmiersprache. Was heißt das? Ja… Anscheinend hat es etwas mit Objekten zu tun. Also was ist ein Objekt? Ein Objekt ist ein bestimmtes Konstrukt im Programm. Bauen wir ein Spiel. Ein Grafik-Adventure. Du kennst das. Ein Held wird in eine bestimmte Spielwelt hinein gesteckt. Der Held muss mit bestimmten Personen sprechen. […]

So unterstützen dich Java Vererbungstabellen beim Entwurf

Java Vererbungstabellen

Bei der Java Vererbung gibt es zwei Klassenarten bzw. -stufen. Die Superklassen, welche einen allgemeinen Typen darstellen Und die spezielleren Unterklassen, welche die Superklasse um bestimmte Funktionen erweitern. Jetzt ist dieses ganze „Der-erbt-von-dem-Konzept“ mitunter sehr schwierig darzustellen. Zum Beispiel in einem Werkzeugkoffer. In einem Werkzeugkoffer befinden sich sämtliche Werkzeuge, von Säge bis Bohrmaschine. Wie machst […]

So kannst du deine Eclipse Oberfläche anpassen

Eclipse anpassen

In diesem Beitrag möchte ich dir zwei ganz nette Features von Eclipse vorstellen. Es geht um Views und um Perspektiven. Wie du schon weißt, besteht Eclipse aus einer grafischen Oberfläche. Und in dieser Oberfläche stehen dir verschiedene Views zur Verfügung. Was ist so ein View?