2016-07-21 2 views
1

クラスjava.util.logging.LogRecord(Level level, String msg)のコンストラクタは、最初の行で変数levelがnullではないことを確認するコードのランダムな行を呼び出すことをコードで明示的に説明しています。Java LogRecordコンストラクタがnull以外のパラメータをチェックするランダムメソッドを呼び出すのはなぜですか?

// levelがnullでないことを確認するには、randomメソッドを呼び出します。

いくつかの説明がありますか?

これはコンストラクタのスクリーンショットですが、IDEから直接確認できます。

LogRecord

+1

選択した方法がランダムに選択されているという意味で*ランダム*メソッドを呼び出すのではありません。ランダムに選択されています。 –

答えて

1

この暗黙のヌルチェックのほんの一例。それはnullをチェックすると、明示的に書くと、新しいNullPointerExceptionが投げよりも短くなっている

  1. :ので、コメントは「ランダム方式」はgetClass()が言うにもかかわらず

    が選択されています。しかし一方で、短いコードを説明する長いコメントがあります。

  2. これは副作用がありません。
  3. finalと宣言されており、サブクラスで上書きすることはできません。
  4. コードはjava.util.Objects.requireNonNullの前に書かれています。
関連する問題