2017-12-13 19 views
3

私はクラス内で@AllArgsConstructorアノテーションを使用していますが、引数がnullでないことを確認します。 これを可能にするためにこのアノテーションを修正する方法はありますか、またはコンストラクタを実装する必要がありますか? おかげ@AllArgsConstructor(lombok)のすべてのパラメータに 'not null'を設定する方法はありますか?

@Getter 
@Setter 
@ToString 
@AllArgsConstructor 
public class Contact { 

    private String name; 
    private String phoneNumber; 

} 

...

<lombok.version>1.16.18</lombok.version> 

答えて

2

はい、あなたはこのようなフィールドに@ NonNullを使用する必要があり、それが生成されたコンストラクタでヌルチェックになります。

+0

ありがとうございました。ちょうど1つの質問:@ NotNullで両方のフィールドに注釈を付けました。このように作成してオブジェクト化すると、Contact rob = new Contact(null、null);私はNullPointerExceptionを取得します。しかし、このようなオブジェクトを作成すると、Contact bill = new Contact( "Bill"、null); (phoneNumber = nullのみで)それは問題ありません。例外なく 。どうして? – IKo

+0

@IKo正しい注釈が付いていますか?ロンボクの注釈は '@NoNull'ではなく' @NoNull'です。 –

+0

@ MichaelA.Schaffrathあなたは正しいです。私が間違って '@ NotNull'を書いたフィールドの1つについてはありがとう! – IKo

関連する問題