Bis jetzt hat jede Applikation in diesen Aufzeichnungen eine Zeile enthalten mit:
public static void main ( String[] args )
Das ist der Methodenkopf der Methode main()
, in der Klasse, die beschrieben wird.
Wenn eine Java-Applikation ausgeführt wird, werden Objekte erzeugt und deren Methoden aufgerufen (sie werden ausgeführt). Um ein Objekt zu erzeugen, muss es eine Beschreibung von ihm geben.
Eine Klasse ist eine Beschreibung eines bestimmten Objekts. Ein Programmierer kann eine Klasse definieren, indem er Java verwendet, oder er kann eine vordefinierte Klasse aus den Klassenbibliotheken verwenden.
Eine Klasse ist ein Plan für ein mögliches Objekt (oder Objekte).
Die Klasse erzeugt nicht von sich aus irgendwelche Objekte.
Wenn ein Programmierer ein Objekt erzeugen will, wird der new
-Operator zusammen mit dem
Namen der Konstruktormethode verwendet.
Ein Konstruktor (kurz für Konstruktormethode) hat immer den gleichen Namen wie die Klasse.
Die Erzeugung eines Objekts, wird auch Instantiierung genannt. In Programierbüchern zu Java werdet Ihr Ausdrücke finden wie:
Hier ist eine sehr kleine Applikation, die ein Objekt
instantiiert (erzeugt), indem sie dem Plan der
Klasse String
folgt:
class StringTester
{
public static void main ( String[] args )
{
String str; // str ist eine Variable, die ein Objekt bezeichnet,
// aber das Objekt existiert noch nicht.
int laenge; // laenge ist eine primitive Variable vom Typ int
str = new String("Zufaellige Notizen"); // erzeugt ein Objekt vom Typ String
laenge = str.length(); // Ruft die length() Methode des Objekts str auf
System.out.println("Der String str ist " + laenge + " Zeichen lang");
}
}
Wenn die Programmzeile
str = new String("Zufaellige Notizen");
zur Laufzeit ausgeführt wird,
erzeugt sie ein Objekt indem sie der Beschreibung der Klasse String
folgt.
Die Klasse String
ist in der Klassenbibliothek java.lang
beschrieben, die zum Java-Sprachumfang gehört.
Das Computersystem findet ein Stück Speicher für das Objekt,
legt den Speicher entsprechend dem Plan (der Definition von String
) an
und stellt Daten und Methoden hinein.
Die Daten in diesem Stringobjekt sind die Zeichen "Zufaellige Notizen"
und die Methoden sind die vielen Methoden, die Stringobjekte haben.
Eine dieser Methoden ist die Methode length()
.
Die Variable str
wird verwendet, um auf das Objekt zu verweisen.
Oder anders gesagt, über die Variable str
kann zur Laufzeit des Programms auf das Stringobjekt "Zufaellige Notizen" zugegriffen werden, um es wie hier aufzufordern etwas für uns zu tun. Nämlich seine Methode length()
einzusetzen.
Wenn ein Programm eine Variable für ein Objekt hat, heißt das bereits, dass das Objekt schon wirklich existiert?