|
Klasse
class Motorcycle { }
Instanzvariablen für diese Klasse :
String make;
String color;
boolean engineState;
engineState ist ein boolescher Ausdruck, der bestimmt, ob der Motor läuft oder ausgeschaltet ist, make das Modell und color die Farbe des Motorrades.
Methoden der Klasse
void startEngine()
{
if (engineState = = true)
System.out.println("Der
Motor ist bereits gestartet.");
else
{
engineState = true;
System.out.println("Der
Motor ist jetzt an.");
}
}
Die startEngine-Methode prüft, ob der Motor bereits läuft (in der Zeile engineState = = true). Trifft das zu, gibt sie eine diesbezügliche Meldung aus. Falls der Motor noch nicht läuft, ändert sich der Zustand des Motors auf true, dann erfolgt eine Meldung.
Wir fügen noch eine Methode ein. Die showAtts-Methode gibt die aktuellen Werte der Instanzvariablen in einer Instanz der Motorcycle-Klasse aus. Das sieht so aus:
void showAtts()
{
System.out.println("Das Motorrad ist eine "+ color
+ "e " + make);
if (engineState = = true) System.out.println("Der
Motor ist an..");
else System.out.println("Der Motor ist aus.");
}
Die showAtts-Methode gibt zwei Zeilen am Bildschirm aus: Das Modell (make) und die Farbe (color) des Objekts Motorrad, und ob der Motor ein oder aus ist.
"Das Motorrad ist eine rote Honda. Der Motor ist aus" wäre ein Beispiel.
Um etwas mit der Motorcycle-Klasse anfangen zu können, z. B. Instanzen dieser Klasse erstellen und damit spielen, müssen Sie eine Java-Anwendung schreiben, die diese Klasse benutzt, oder in diese Klasse eine main-Methode einfügen. Der Einfachheit halber entscheiden wir uns für letzteres.
class MotorRad
1. public static void main (String args[])
{
2: Motorcycle m = new Motorcycle();
3: m.make = "Honda";
4: m.color = "rot";
5: System.out.println("Rufe die Systemattribute
auf...");
6: m.showAtts();
7: System.out.println(".......");
8: System.out.println("Starte den Motor...");
9: m.startEngine();
10: System.out.println(".......");
11: System.out.println("Rufe die Systemattribute auf...");
12: m.showAtts();
13: System.out.println(".......");
14: System.out.println("Starte den Motor...");
15: m.startEngine();
16: }
Vererbung
Wollen wir nun beispielsweise von unserer Klasse MOTOCYCLE eine SUBCLASS SUPERBIKE erstellen. Die alles erbt, aber eine weitere Methode bekommt und eine geerbte Methode überschreibt.
import java.io.*;
class Superbike extends Motorcycle
{
boolean it_is;
int qcm;
BufferedReader wert = new BufferedReader(new InputStreamReader(System.in));
void read_qcm()
{
try
{
System.out.println(" Bitte geben Sie die Marke ein :");
make = wert.readLine();
System.out.println(" Bitte geben Sie Farbe an :");
color = wert.readLine();
System.out.println(" Bitte geben Sie den Hubraum in qcm ein :");
qcm = Integer.parseInt(wert.readLine());
if (qcm < 750) it_is = false;
else it_is = true;
}
catch (IOException e)
{
System.out.println(e.toString);
}
}
void showAtts()
{
System.out.println("Das
Motorrad ist eine " + color + "e " + make);
if (it_is == true) System.out.println("Glueckwunsch
zur Superbike !");
else System.out.println("Schoenes
Motorrad, aber keine Superbike.");
}
}
class MotorradTest
{
public static void main (String args[])
{
Superbike m = new Superbike();
m.read_qcm();
System.out.println("Rufe die Systemattribute auf...");
m.showAtts();
}
}
Erläuterungen :
class Superbike extends Motorcycle
qcm = Integer.parseInt(wert.readLine());
|