Was bewirkt die Verwendung von @NonNull bei einer void-Methode?

8

Was ist der Sinn in Lombok Annotation @NonNull für eine Methode?

%Vor%

Überprüfen wir die Instanz der Klasse MyClass (MyClass obj == null)?

    
barbara 14.01.2015, 16:37
quelle

2 Antworten

14

Für eine void Methode gibt es keinen Sinn.

Für eine Methode mit einem Rückgabetyp wird angezeigt, dass sie null zurückgibt:

%Vor%

Nach dem Tutorial zu urteilen, scheint es, als würde es innerhalb der Methode keine Überprüfung erzeugen Stellen Sie sicher, dass nicht null ist, aber jedem Aufrufer wird mitgeteilt, dass er realistisch erwarten kann, dass ein Wert ungleich null zurückgegeben wird.

    
Jon Skeet 14.01.2015, 16:39
quelle
-2

Sie können @NonNull für den Parameter einer Methode oder eines Konstruktors verwenden, damit Lombok eine Nullprüfungsanweisung für Sie generiert.

Lombok hat immer eine Annotation mit dem Namen @NonNull auf einem Feld als Signal zum Erzeugen eines Null-Checks behandelt, wenn Lombok eine vollständige Methode oder einen Konstruktor für Sie generiert, zum Beispiel @Data . Wenn Sie jetzt jedoch lomboks eigenen @lombok.NonNull für einen Parameter verwenden, wird nur die Null-Check-Anweisung in Ihre eigene Methode oder Ihren eigenen Konstruktor eingefügt.

    
Felipe Gutierrez 14.01.2015 16:44
quelle

Tags und Links