So wählen Sie die richtige @NotNull-Annotation für Ihren Java-Code aus
Um die Lesbarkeit des Codes zu verbessern und NullPointerExceptions zu verhindern, versuchen viele Entwickler, Tools zu nutzen wie statische IDE-Analyse und FindBugs. Allerdings kann die Verbreitung äquivalenter @NotNull/@NonNull-Annotationen entmutigend sein. In diesem Artikel werden die verfügbaren Optionen erläutert, um Ihnen bei der Auswahl der am besten geeigneten Option zu helfen.
Äquivalente Anmerkungen
Die folgende Liste enthält äquivalente @NotNull-Anmerkungen aus verschiedenen Paketen:
Kriterien zur Auswahl
Wenn JSR 305 inaktiv ist, erfordert die Auswahl der @NotNull-Annotation einen pragmatischen Ansatz.
Syntax
Aus stilistischen Gründen Erwägen Sie, Anmerkungen zu vermeiden, die an bestimmte IDEs, Frameworks oder Toolkits gebunden sind. Dadurch entfällt Folgendes Optionen:
javax.annotation oder javax.validation.constraints?
Der Vergleich von javax.validation.constraints und javax.annotation, die zusätzliche Abhängigkeiten erfordern, zeigt eine leichte Präferenz für javax.annotation Kürze.
Implementierung
Ähnlichkeiten: Alle @NonNull-Annotationen haben eine triviale Implementierung, außer:
Unterschiede: Laufzeit Anmerkungen (javax.annotation, javax.validation.constraints, org.checkerframework.checker.nullness.qual) bieten zusätzliche Laufzeitprüfungen, haben aber weniger Auswirkungen als erwartet.
Verwendbare Kontexte
Annotationen unterscheiden sich in ihre verwendbaren Kontexte:
Fazit
Basierend auf den besprochenen Kriterien ist die pragmatische Wahl für eine @NotNull-Annotation javax.annotation.Nonnull. Seine Kürze, Laufzeitannotation und Kompatibilität mit JLS-Kontexten bieten eine ausgewogene Lösung für Lesbarkeit, statische Analyse und Laufzeitprüfungen.
Das obige ist der detaillierte Inhalt vonWelche „@NotNull'-Annotation sollte ich für meinen Java-Code wählen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!