Einführung
In einer Java-Anwendung sind Java-Klassen die grundlegenden Bausteine aller Implementierungskonstrukte wie JavaBeans,
EJBs, Servlets und Applets. Die gesamte Implementierungslogik wird in Java-Klassen bereitgestellt.
Klassen sind Schablonen, anhand deren Objekte erstellt werden. In den Klassen sind Datenstrukturen zusammen mit den
Algorithmen zum Bearbeiten der Daten enthalten. Eine Klasse ist normalerweise eine Factory für die von ihr definierten
Daten.
Diese Richtlinien enthalten keine detaillierte Beschreibung des Konzepts von Klassen oder des objektorientierten
Designs. Im Folgenden wird davon ausgegangen, dass der Leser mit dem objektorientierten Design vertraut ist. Wenn Sie
eine ausführliche Beschreibung des objektorientierten Designs benötigen, suchen Sie diese über den Abschnitt mit
Referenzinformationen.
Features der Java-Klasse
Java-Klassen umfassen Folgendes:
-
Member-Funktionen
-
Member-Daten
-
Statische Funktionen
-
Statische Daten
-
Vererbung
-
Implementierung von Schnittstellen
Member-Funktionen implementieren ein Verhalten, das sich auf einzelne Objekte bezieht. Member-Funktionen werden im
Kontext eines einzelnen Objekts ausgeführt.
Member-Daten definieren die Datenstrukturen für Objekte in Form einer Gruppe von Variablendeklarationen. Im Idealfall
ist der Zugriff auf die Member-Daten nur über Member-Funktionen möglich.
Statische Funktionen sind Methoden, die außerhalb des Kontextes der durch sie definierten einzelnen Objekte ausgeführt
werden.
Statische Daten gehören zu der Klasse, die sie definiert, anstatt zu den einzelnen Objekten, die durch die statischen
Daten definiert werden. Es gibt genau eine Instanz von statischen Daten in einer aktiven Anwendung. Normalerweise ist
der Zugriff auf statische Daten nur über statische Funktionen möglich, obwohl einige Designs Instanzen erfordern, die
direkt auf die statischen Daten zugreifen.
Java-Klassen können über Vererbung miteinander in Beziehung stehen, die mit dem Java-Schlüsselwort "extends"
ausgedrückt wird. Die Vererbung ("Inheritance") ist eine hoch entwickelte Technik zur Wiederverwendung von Code. Sie
erlaubt es den Designern, allgemeine Datenstrukturen und allgemeines Verhalten in Superklassen zu extrahieren und
spezifisches Verhalten in Unterklassen zu behalten.
Eine Schnittstelle deklariert eine Reihe von Methoden, deren Implementierung in Klassen bereitgestellt wird. Ein Klasse
kann mehrere Schnittstellen implementieren, und Schnittstellen können von vielen Klassen implementiert werden. Die
Trennung von Schnittstelle und Implementierung beschleunigt die Entkopplung von Klassen. Der Zugriff auf Objekte über
Schnittstellen stellt eine saubere Methode zur Verwendung der Polymorphie dar.
Java-Klassen festlegen
In einer J2EE-Anwendung können Java-Klassen festlegen werden, um das Design von J2EE-Elementen zu unterstützen. Nähere
Informationen zum Festlegen dieser Elemente finden Sie in folgenden Richtlinien:
Die Richtlinien zum Festlegen zusätzlicher Java-Klassen unterscheiden sich nicht von den Richtlinien zum Festlegen
anderer Arten von Klassen. Nähere Informationen finden Sie unter Aufgabe: Designelemente identifizieren.
Java-Klassen modellieren
Java-Klassen werden als UML-Klassen modelliert.
Im nachfolgenden Diagramm werden die UML-Darstellung einer Java-Klasse und der zugehörige Java-Quellcode gezeigt.
|
class MyClass {
private int myMemberData;
private String myOtherMemberData;
private static int myStaticData;
public int getMyMemberData() {
return this.myOtherMemberData;
}
public static int getMyStaticData() {
return MyClass.myStaticData;
}
}
|
|