Lernpfad:Objektorientierte Programmierung mit Java/Der Konstruktor: Unterschied zwischen den Versionen

Zur Navigation springen Zur Suche springen
keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 4: Zeile 4:
== Aufbau eines Konstruktors ==
== Aufbau eines Konstruktors ==
Ein Konstruktor ist ähnlich wie andere Methoden aufgebaut, hat aber einige Besonderheiten.  
Ein Konstruktor ist ähnlich wie andere Methoden aufgebaut, hat aber einige Besonderheiten.  
<syntaxhighlight lang="java" line=1 highlight="5-7">
<syntaxhighlight lang="java" line=1>
public class Addierer  {
public class Addierer  {
   private int ersterSummand;
   private int ersterSummand;
Zeile 19: Zeile 19:
</syntaxhighlight>
</syntaxhighlight>


Zunächst hat ein Konstruktor niemals einen {{Farbig|Rückgabewert|red}}. Daher wird der {{Pfad|Parameter und Rückgaben#Rückgabetypen|Rückgabetyp}} bei der Deklaration des Konstruktors weggelassen.
Zunächst hat ein Konstruktor niemals einen Rückgabewert. Daher wird der {{Pfad|Parameter und Rückgaben|Rückgabetyp}} bei der Deklaration des Konstruktors weggelassen.


Der {{Farbig|Bezeichner|blue}} darf nicht frei gewählt werden, sondern muss exakt (auch Groß- und Kleinschreibung) dem Namen der Klasse entsprechen.
Dann darf der Bezeichner nicht frei gewählt werden, sondern muss exakt (auch Groß- und Kleinschreibung) dem Namen der Klasse entsprechen.


Das Beispiel oben zeigt, wie ein Konstruktor für die Klasse <code>Addierer</code> aussehen könnte.
Das Beispiel oben zeigt, wie ein Konstruktor für die Klasse <code>Addierer</code> aussehen könnte.
== Konstruktoren überladen ==
Genauso wie {{Pfad|Methoden#Methoden überladen|Methoden}} können Konstruktoren ''überladen'' werden. Das bedeutet, eine Klasse darf mehrere Konstruktoren enthalten, die sich an der Anzahl und Datentypen der Parameter unterscheiden.
<syntaxhighlight lang="java" line=1>
public class Addierer  {
  private int ersterSummand;
  // Konstruktor
  public Addierer( int pErsterSummand ) {
    ersterSummand = pErsterSummand;
  }
  // Zweiter Konstruktor
  public Addierer( int pErsterSummand, int pNochEinSummand ) {
    ersterSummand = pErsterSummand + pNochEinSummand;
  }
  // Dritter Konstruktor
  public Addierer( String pEinString ) {
    ersterSummand = pErsterSummand + pNochEinSummand;
  }
  public int addieren( int pZweiterSummand ) {
    return ersterSummand + pZweiterSummand;
  }
}
</syntaxhighlight>

Navigationsmenü