public class BeispielKonstruktor { public static void main(String[] args) { Beispiel b = new Beispiel(); Beispiel b2 = new Beispiel(10); System.out.println("Ende von main()"); } } class Beispiel { private int zahl; // Konstruktor-Methode: Heißt so, wie die Klasse, aus der das // neu erzeugte Objekt stammt, und wird automatisch beim ERZEUGEN // des Objektes ausgeführt! public Beispiel() { System.out.println("Ich bin ein Objekt der Klasse Beispiel."); } // Ein Konstruktor darf auch mit Übergabeparametern deklariert // werden, die beim Erzeugen des Objektes dem Konstruktor über- // geben werden: public Beispiel(int zahl) { System.out.print("Ich setze die interne Variable zahl auf "); System.out.println(zahl); // "this" ist immer das aktuelle Objekt. // this.zahl wäre also die private "zahl" am Anfang der // Klassendeklaration, und nicht "zahl" vom // Übergabeparameter. this.zahl = zahl; // this.zahl ist die private int zahl; // zahl ist der Übergabeparameter von Beispiel(int zahl) } // Es dürfen prinzipiell beliebig viele Konstruktoren definiert // werden (die alle so heißen, wie die Klasse selbst), aber sie // sie müssen immer UNTERSCHIEDLICHE Übergabeparameter (vom // Datentyp her, nicht vom Variablennamen) besitzen. // public Beispiel(double zahl) wäre jetzt noch erlaubt // public Beispiel(int andere_zahl) jedoch nicht. }