public final class NullableUtils extends ObjectSE
NonNullApi
および Nullable
および JSR-305 Nonnull
SE アノテーションを使用して宣言されます。デフォルト (アノテーションの使用なし) では、パッケージとその型は、戻り値とメソッドパラメーターで null 値を許可すると見なされます。Null 可能性ルールは、Spring の NonNullApi
などの JSR-305 メタアノテーションでパッケージにアノテーションを付けることによって表現されます。パッケージのすべての型がパッケージルールを継承します。サブパッケージは null 許容ルールを継承せず、それ自体にアノテーションを付ける必要があります。@org.springframework.lang.NonNullApi package com.example;
Nullable
は、メソッドにそれぞれパラメーターにアノテーションを付けることにより、メソッドの戻り値またはメソッドのパラメーターに null 値を選択的に許可します。public class ExampleClass { String shouldNotReturnNull(@Nullable String acceptsNull, String doesNotAcceptNull) { // … } @Nullable String nullableReturn(String parameter) { // … } }
Nonnull
SE は、メタアノテーションの構成に適しており、NULL 可能でない場合に適用される Nonnull.when()
SE を介して表現します。NonNullApi
, Nullable
, Nonnull
SE修飾子と型 | メソッドと説明 |
---|---|
static boolean | isExplicitNullable(MethodParameter methodParameter) MethodParameter が null 許容と見なされるように明示的にアノテーションが付けられているかどうかを判別します。 |
static boolean | isNonNull(AnnotatedElementSE element, ElementTypeSE elementType) AnnotatedElement SE のスコープ内の ElementType SE が NULL 以外の値を必要とするかどうかを判別します。 |
static boolean | isNonNull(ClassSE<?> type, ElementTypeSE elementType) type のスコープ内の ElementType SE が NULL 以外の値を必要とするかどうかを判別します。 |
static boolean | isNonNull(MethodSE method, ElementTypeSE elementType) Method SE のスコープ内の ElementType SE が NULL 以外の値を必要とするかどうかを判別します。 |
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSE
public static boolean isNonNull(MethodSE method, ElementTypeSE elementType)
Method
SE のスコープ内の ElementType
SE が NULL 以外の値を必要とするかどうかを判別します。null 不可のルールは、クラスとパッケージのアノテーションから検出されます。Nonnull
SE が When.ALWAYS
に設定されている場合、null 以外が適用されます。type
- インスペクションするクラス。elementType
- 要素型。ElementType
SE がデフォルトで null 値を許可する場合は true。isNonNull(Annotation, ElementType)
public static boolean isNonNull(ClassSE<?> type, ElementTypeSE elementType)
type
のスコープ内の ElementType
SE が NULL 以外の値を必要とするかどうかを判別します。null 不可のルールは、クラスとパッケージのアノテーションから検出されます。Nonnull
SE が When.ALWAYS
に設定されている場合、null 以外が適用されます。type
- インスペクションするクラス。elementType
- 要素型。ElementType
SE がデフォルトで null 値を許可する場合は true。isNonNull(Annotation, ElementType)
public static boolean isNonNull(AnnotatedElementSE element, ElementTypeSE elementType)
AnnotatedElement
SE のスコープ内の ElementType
SE が NULL 以外の値を必要とするかどうかを判別します。このメソッドは、アノテーション付き要素からデフォルトの nullability
SE ルールを決定します element
- 宣言の範囲は、Package
SE、Class
SE、Method
SE の場合があります。elementType
- 要素型。ElementType
SE がデフォルトで null 値を許可する場合は true。public static boolean isExplicitNullable(MethodParameter methodParameter)
MethodParameter
が null 許容と見なされるように明示的にアノテーションが付けられているかどうかを判別します。null 可能性ルールは、メソッドとパラメーターのアノテーションから検出されます。Nonnull
SE が When.UNKNOWN
、When.NEVER
、When.MAYBE
のいずれかに設定されている場合、MethodParameter
は NULL 可能と見なされます。methodParameter
- インスペクションするメソッドパラメーター。Copyright © 2011–2019 Pivotal Software, Inc.. All rights reserved.