Wenn du ihn nicht castest, ist er ja nicht vom Typ Kuehlbehaelter, sondern noch vom übergeordneten Typ.
Mit der Abfrage wird nur sichergestellt, dass du beim expliziten Casten keine Fehlermeldung bekommst.
EDIT:
"Static" bedeutet, dass es die Methode/Variable genau ein einziges Mal für alle Instanzen gibt.
Du DARFST eine Methode nur dann static machen, wenn sie nur auf static-Variablen zugreift.
Sie MUSS static sein, wenn du aus einer static-Methode direkt auf sie zugreifen willst (d.h. ohne den Umweg über Objekte).
Die main ist IIRC zwingend static...
Ich hoffe der Code ist so einigermaßen richtig, Progra ist schon ein wenig her...
- Code: Alles auswählen
public static void main() { /* zwingende Vorgabe */
Objekt = new ObjectClass();
Objekt.Methode() /* Methode() muss nicht static sein */
AndereMethode() /* AndereMethode() muss static sein */
}
public void ObjectClass.Methode() { /* korrekt */
}
public void AndereMethode() {
/* bringt die Fehlermeldung: non-static method AndereMethode() cannot be referenced from a static context. */
}
Zuletzt geändert von Alexander Urban am 05.01.08 14:03, insgesamt 1-mal geändert.
Nicht der Staat gewährt den Bürgern Freiheit, sondern die Bürger dem Staat Einschränkungen ihrer Rechte.
Kontrollierende und inhaltlich wertende Eingriffe in eine technologisch neutrale Infrastruktur sind eine Gefahr für den freiheitlichen Rechtsstaat.