Ab Java 9 können Methoden in einer Schnittstelle privat sein. Eine private Methode kann eine statische oder eine Instanzmethode sein. Da private Methoden nur in den Methoden der Schnittstelle selbst verwendet werden können, beschränkt sich ihre Verwendung darauf, Hilfsmethoden für die anderen Methoden der Schnittstelle zu sein.
Cay S. Horstmann, Core Java Band I - Grundlagen
Ich verstehe, dass wir die gemeinsame Funktionalität in die privaten Methoden integrieren und nicht öffentlich zugänglich machen können. Aber wir können hier zwei Arten von privaten Methoden anwenden:
private
private static
Die Verwendung von private static
Methoden ist verständlich, aber wann sollten wir private
Methoden verwenden? Wir haben es hier nicht mit Instanzen zu tun, da dies eine Schnittstelle ist. Warum ist das Erstellen von private
Methoden zulässig? Brauchen wir nicht nur private static
Methoden?
private
Instanzmethode der Schnittstelle in der Klasse aufzurufen, die die Schnittstelle implementiert.private static
Methoden entsprechen oder durch diese ersetzt werden können.Antworten:
OK, ein weiterer Versuch, die Fragen von OP tatsächlich zu beantworten. Wenn Sie eine andere nicht statische Methode auf der Schnittstelle von einer privaten Methode aus aufrufen müssen, kann die private Methode nicht statisch sein. Zum Beispiel würde es einen Kompilierungsfehler geben, wenn die folgende private Methode statisch wäre:
quelle
Schnittstellen werden verwendet, um das Verhalten eines Objekts zu definieren. Dies bedeutet, dass alle Methoden der Schnittstelle verfügbar gemacht werden. Bei Verwendung von Standardmethoden können wir Standardimplementierungen der definierten Methoden bereitstellen und die Wiederverwendung von Code über Klassengrenzen hinweg anbieten.
In einigen Fällen ist Funktionalität erforderlich (möglicherweise nur für die Wiederverwendung von Code in verschiedenen Standardmethoden ), sollte jedoch nicht verfügbar gemacht werden, da dies die Namespaces der Klasse / des Objekts verschmutzen würde. Hier bieten sich private Standardmethoden an. Beispiele für private Standardmethoden können Fabriken, Validierungen oder die Behandlung von Standardzuständen sein.
quelle