Kotlin学習ノート——注釈

2577 ワード

@JvmField
Kotlinコンパイラがこのプロパティのgetter/setterを生成しないことを示し、フィールドとして公開します.val変数を修飾するのに使うならconstキーワードの機能と同じです
@JvmField var a: String = ""@JvmField
@NotNull
public static String a = "";
@JvmField val a: String = ""@JvmField
@NotNull
public static final String a = "";
var a: String = ""@NotNull
private static String a = "";

@NotNull
public static final String getA() {
    return a;
}

public static final void setA(@NotNull String var0) {
    Intrinsics.checkParameterIsNotNull(var0, "");
    a = var0;
}

@JvmOverloads
Kotlinコンパイラがデフォルトのパラメータ値を含む関数のリロードを生成することを示します.
@JvmOverloads fun a(str: String, int: Int = 0) {}

@JvmStatic
要素から静的メソッドを生成する必要性を指定します.注:この注記はobjectキーワードで修飾されたクラスのメソッド、またはcompanion objectのメソッドにのみ使用できます.
object A {
    @JvmStatic fun a() {}
}
class A {
    companion object {
        @JvmStatic fun a() {}
    }
}

@JvmSynthetic
注釈方法とフィールドに使用します.タグ付けされた要素はkotlinコードでのみ使用でき、javaコードでは使用できません.
@JvmSuppressWildcards
クラスとメソッドを注釈するために使用され、タグ要素の汎用パラメータがワイルドカード?にコンパイルされないようにする詳細は、2番目のピットを参照してください.