Java final
Schlüsselwort das Äquivalent von C# 's sealed
, readonly
und sealed
Schlüsselwörter ist.
Zwei dieser drei sind etwas anders in Java und C#:
In Java Methoden standardmäßig virtuell sind, so kann jede Methode final
deklariert werden, damit sie nicht außer Kraft gesetzt werden. In C# sind Methoden standardmäßig nicht virtuell, so können die einzigen überschriebenen Methoden deklariert werden sealed
(sie zu verhindern, dass weitere überschriebene)
in Java, eine Variable oder ein Feld final
erklärt werden kann, um es zu verhindern, dass geändert, nachdem Initialisierung (Und für Felder außerhalb des Konstruktors). In C# können Felder für genau den gleichen Effekt als readonly
deklariert werden, lokale Variablen jedoch nicht. Beachten Sie, dass Java kein Äquivalent für das Schlüsselwort const
von C# hat. (const
s in C# sind zum Zeitpunkt der Kompilierung ausgewertet und die Werte sind hartcodiert statt verwiesen wird)
Für Klassen, C# 's sealed
Klassen und Java final
Klassen sind genau die gleichen (AFAIK).
dup: http://stackoverflow.com/questions/1327544/what-is-the-äquivalent-of-javas-final-in-in- –
Warum vergleichen Sie nicht einfach die Dokumentation? –
RTFM, nicht wahr? Nun, schließen wir dieses Q friedlich. Danke euch allen! Ich musste eine Antwort als akzeptiert wählen. –