|
Konstruktoren Um ein Objekt zu initialisieren, wird automatisch beim Aufruf von new die Konstruktor- Methode der Objekt-Klasse gerufen. - Sie hat den gleichen Namen wie die Klasse, für die sie ein Objekt initialisiert.
- Sie hat keinen Rückgabewert, selbst void wird nicht angegeben.
- Die Parameter sind wie bei jeder Methode optional.
Syntax: class Klassenname { ... Klassenname() // Konstruktormethode { ... //Befehle der Konstruktor-Methode } ... } Beispiel: public class Meth03 { // Attribute int fl, um, br, la; // Konstruktor zur Eingabe von Breite und Länge Meth03(int xbr,int xla) {
br = xbr;
la = xla;
return;
}
// Methode zur Berechnung der Fläche
void flaeche()
{
fl=br*la;
return;
}
// Methode zur Berechnung des Umfangs
void umfang()
{
um=2*br+2*la;
return;
}
// Methode zur Ausgabe der Fläche und des Umfangs
void ausgabe()
{
System.out.println("Die Fläche ist: " + fl);
System.out.println("Der Umfang ist: " + um);
return;
}
// Methode main
public static void main(String args[])
{
int hbr,hla;
hbr = Integer.valueOf(args[0]).intValue();
hla = Integer.valueOf(args[1]).intValue();
// Erzeugen der Instanz
Meth03 rechteck = new Meth03(hbr,hla);
// Berechnung der Fläche
rechteck.flaeche();
// Berechnung des Umfangs
rechteck.umfang();
// Ausgabe von Fläche und Umfang
rechteck.ausgabe();
System.exit(0);
}
}
ergibt beim Aufruf durch
java Meth03 10 15
als Ausgabe am Bildschirm
Die Fläche ist: 150
Der Umfang ist: 50
Beispiel:
public class Auto01
{
int anzahl_passagiere;
float geschwindigkeit;
// Konstruktor
Auto01()
{
anzahl_passagiere=0;
geschwindigkeit=0.F;
}
// Methode Transportieren
void transportieren(int mitfahrer)
{
if((anzahl_passagiere+mitfahrer)>5)
System.out.println("Es ist kein Platz mehr frei");
else
anzahl_passagiere+=mitfahrer;
return;
}
// Methode Beschleunigen
void beschleunigen(float g)
{
geschwindigkeit += g;
return;
}
// Methode main
public static void main(String args[])
{
// Speicherplatz für Objekt anlegen, Referenz anlegen
// Konstruktor aufrufen, d.h. Erzeugen den Instanz:
Auto01 mein_auto = new Auto01();
System.out.println("Die Geschwindigkeit ist: " +
mein_auto.geschwindigkeit);
System.out.println("Die Anzahl der Passagiere ist: " +
mein_auto.anzahl_passagiere);
mein_auto.transportieren(2);
System.out.println("Die Anzahl der Passagiere ist: " +
mein_auto.anzahl_passagiere);
mein_auto.transportieren(2);
System.out.println("Die Anzahl der Passagiere ist: " +
mein_auto.anzahl_passagiere);
mein_auto.transportieren(2);
mein_auto.beschleunigen(40);
System.out.println("Die Geschwindigkeit ist: " +
mein_auto.geschwindigkeit);
mein_auto.beschleunigen(-40);
System.out.println("Die Anzahl der Passagiere ist: " +
mein_auto.anzahl_passagiere);
System.out.println("Die Geschwindigkeit ist: " +
mein_auto.geschwindigkeit);
System.exit(0);
}
}
Als Ausgabe erhält man:
Die Geschwindigkeit ist: 0.0
Die Anzahl der Passagiere ist: 0
Die Anzahl der Passagiere ist: 2
Die Anzahl der Passagiere ist: 4
Es ist kein Platz mehr frei
Die Geschwindigkeit ist: 40.0
Die Anzahl der Passagiere ist: 4
Die Geschwindigkeit ist: 0.0
|
|
|