Ich habe das gelesen:
%Vor%ist gleich:
%Vor%beides bedeutet, dass die Methode nicht überschrieben werden kann!
Aber ich sehe nicht die Äquivalenz, wenn eine Methode privat ist, ist es automatisch nicht zugänglich ...
Es stimmt, dass Sie @Override
nicht für beide Methoden verwenden können. Sie können nur @Override
eine nicht final
Instanz Methode verwenden.
final
ist, dann kann man @Override
es nicht static
ist, dann ist es keine Instanz Methode, mit Es ist NICHT wahr, dass sie "gleich" sind, weil eins private static
und das andere public final
ist.
static
-Kontext Sie können nicht @Override
a static
-Methode verwenden, aber Sie können sie mit einer anderen static
-Methode ausblenden. Eine static
-Methode erlaubt natürlich keinen dynamischen Versand (was durch @Override
erreicht wird).
Keine kann außer Kraft gesetzt werden, aber aus sehr unterschiedlichen Gründen. Die erste ist eine öffentliche nichtstatische Methode, während die zweite statisch ist. Die erste ist also nicht überschreibbar, nur weil sie als endgültig deklariert wurde, während die zweite, die statisch ist, niemals überschrieben werden kann.
Beachten Sie, dass Sie von Anfang an auf nicht statische Mitglieder der Klasse zugreifen können, während Sie ab der Sekunde nicht können. Sie werden also sehr unterschiedlich eingesetzt, sind also nicht "gleich".