Wenn meine Klasse eine gut dokumentierte externe Schnittstelle von einer externen Bibliothek implementiert (eine, die ich nicht geschrieben habe), zum Beispiel AttributeConverter
von , frage ich mich die richtige Methode, meine übergeordneten Methoden zu dokumentieren. Benutze ich @inheritDoc oder einen Nicht-Javadoc-Kommentarblock oder dokumentiere einfach gar nichts, da die Dokumentation leicht gefunden werden kann, was ist der richtige Weg?Javadoc eine Klasse, die eine externe Schnittstelle implementiert, für die Sie nicht die Quelle geschrieben haben?
Antwort
Es hängt davon ab, was Sie versuchen zu tun. Die erste Frage, die Sie sich stellen müssen, ist: Habe ich etwas zu den Eltern Javadoc hinzuzufügen?
Wenn die Antwort "Nein" ist, ist dies eine Art Meinung basiert. Wenn Sie es einfach weglassen, wird das Eltern-Javadoc verwendet, solange Sie @Override
verwenden. Der Kommentar non-javadoc
wird in Bezug auf das Ergebnis unwichtig. Es dient immer noch seinem Zweck im Quellcode. Siehe Should I use a "non-Javadoc" comment?
@inheritDoc
ist in diesem Fall nicht so nützlich, da es nur das Element kopiert, auf dem es verwendet wird. Von documentation:
Legen Sie die Inline-Tag {@inheritDoc} in einem Verfahren Haupt-Beschreibung oder @return, @param oder @ throws-Tag Kommentar - die entsprechenden geerbten Haupt Beschreibung oder Tag-Kommentar ist in diesem Punkt kopiert.
Es kommt ins Spiel, wenn Sie etwas zur Elterndokumentation hinzufügen möchten. Verwenden Sie es, um die Eltern-Dokumentation irgendwann in Ihrem eigenen Kommentar einzufügen.
- 1. Sollten Implementierungsmethoden JavaDoc-Kommentar haben, wenn die Schnittstelle, die sie implementieren, JavaDoc-Kommentar hat
- 2. Eine Klasse eine Schnittstelle implementiert, die eine ENUM
- 3. Vorlage für Klasse, die eine Schnittstelle mit Vorlage implementiert
- 4. eine Funktion, die eine Schnittstelle implementiert
- 5. Karte der Klasse, die Schnittstelle implementiert
- 6. Wie implementiert eine Schnittstelle die Funktionalität?
- 7. Unterklassen einer Klasse, die eine generische Schnittstelle implementiert
- 8. Java: Die untergeordnete Klasse implementiert die Schnittstelle, aber die übergeordnete Klasse überschreibt die Mitglieder der Schnittstelle.
- 9. Javadoc generiert für eine Klasse, die nicht existiert
- 10. Erstellen einer Typoskript-Klasse, die eine Schnittstelle implementiert
- 11. Methode überschreiben abstrakte Klasse, die eine Schnittstelle implementiert
- 12. So erstellen Sie eine Schnittstelle für eine Klasse, die JDialog (oder allgemein eine andere Klasse) erweitert
- 13. Sollten Sie eine Schnittstelle erstellen, wenn es (derzeit) nur eine Klasse gibt, die es implementiert?
- 14. Gibt die Interfacetypen zurück, die eine Klasse implementiert C#
- 15. Wie kann ich eine Klasse haben, die eine Schnittstelle implementiert und von einer abstrakten Klasse erbt? (C# .NET 3.5)
- 16. Eine Remove-Methode für eine Klasse schreiben, die Iterable implementiert
- 17. Kann eine Schnittstelle teilweise Methoden implementiert haben?
- 18. TypeScript - Überprüfen, ob Klasse eine Schnittstelle implementiert
- 19. Instanziieren Sie eine Schnittstelle, die eine Klasse erweitert
- 20. Abrufen von Typargumenten generischer Schnittstellen, die eine Klasse implementiert
- 21. Sollte eine Klasse, die eine Implementierung erweitert, auch angeben, dass sie diese Schnittstelle implementiert?
- 22. java setVisible (true) Klasse, die die gleiche Schnittstelle implementiert
- 23. eine endgültige Klasse auf eine kompatible Schnittstelle, die die Klasse erhebt keinen Anspruch auf
- 24. C# -Compiler erkennt nicht, dass eine Klasse eine Schnittstelle implementiert
- 25. Implementiert Schnittstelle mit Generika, beide Methoden haben die gleiche Löschung
- 26. So erstellen Sie eine Klasse, die mouseListener implementiert
- 27. Warum implementiert die Klasse LinkedHashMap die Map-Schnittstelle?
- 28. Erstellen Sie eine DataRow-Klasse, die ILiquidizable implementiert
- 29. Wie kann ich eine Klasse verspotten, die die Iterator-Schnittstelle mit PHPUnit implementiert?
- 30. Wie kann ich eine andere Implementierung bereitstellen, wenn die Klasse eine Schnittstelle implementiert, die den Laravel-Container verwendet?