Beispiel: die Klasse Circle
public class Circle {
public double x, y;
public double r;
public double circumference()
{ return 2 * 3.14159 *r; }
public double area() { return
3.14159 * r * r; }
}
Mit dem Schlüsselwort class wird eine neue Klasse eingeführt. Nach dem Schlüsselwort folgt der Name
der Klasse, hier Circle. Die Klasse ist hier vom Typ public (Bedeutung von public in Kapitel 9).
Alles, was in dieser Klasse existieren soll, steht innerhalb der geschweiften Klammern. Das sind Daten (Synonym für Variablen)
und Methoden (Synonym für Funktionen). Auf diese Daten/Methoden kann man verschiedene Zugriffsrechte vergeben (hier ist alles
public), dazu aber (ebenfalls) mehr in Kapitel 9.
In diesem Beispiel werden drei Variablen (x, y und r) vom Typ double (Gleitkommazahl) und zwei Funktionen (circumference
und area) definiert. Die Syntax der Funktionen ist die gleiche wie in C, nur daß vor dem Rückgabetyp noch der
Zugriffsmodus steht (hier public).
Ein Objekt ist eine Instanz einer Klasse:
c ist eine neue Variable vom Typ Circle. Der Typ Circle ist eigentlich nichts anderes als eine Struktur, die außer Variablen
auch Funktionen enthalten kann. Das Schlüsselwort new wird im nächsten Kapitel erklärt.
Circle c; // c ist Name, der auf Circle-Objekt zeigt
c = new Circle(); // jetzt wird ein Objekt erzeugt
Zugriff auf das Objekt:
// Zugriff auf Daten des Objekts
c.x = 2.0;
c.y = 2.0;
c.r = 1.0;
// Benutzen der Objekt-Methode
double a;
a = c.area();
Es ist keine Übergabe von Argumenten nötig ( Funktion area() arbeitet auf Objekt c => daher der Name "objektorientiertes Programmieren").
this-Zeiger: zeigt innerhalb der Klasse auf das aktuelle
Objekt