Language

Record クラス

定義

これは、すべてのJava言語レコード クラスの共通基本クラスです。

[Android.Runtime.Register("java/lang/Record", ApiSince=34, DoNotGenerateAcw=true)]
public abstract class Record : Java.Lang.Object
[<Android.Runtime.Register("java/lang/Record", ApiSince=34, DoNotGenerateAcw=true)>]
type Record = class
    inherit Object
継承
属性

注釈

これは、すべてのJava言語レコード クラスの共通基本クラスです。

コンパイラによって合成された暗黙的に宣言されたメソッドの説明など、レコードの詳細については、<cite>Java言語仕様</引用>のセクション 8.10 を参照してください。

<em>record クラス</em>は、<em>record コンポーネント</em>と呼ばれる固定された値のセットに対して、浅く不変の透過的なキャリアです。 Java言語では、レコード クラスを宣言するための簡潔な構文が提供され、レコード コンポーネントがレコード ヘッダーで宣言されます。 レコード ヘッダーで宣言されたレコード コンポーネントのリストは、 <em>record 記述子</em>を形成します。

レコード クラスには、次の必須メンバーがあります。 <em>canonical コンストラクター</em>。レコード クラスと同程度のアクセス権を持ち、その記述子がレコード記述子と同じである必要があります。名前と型がコンポーネントの名前と型と同じである各コンポーネントに対応するプライベート最終フィールド。各コンポーネントに対応するパブリック アクセサー メソッド。 名前と戻り値の型がコンポーネントの名前と戻り値の型と同じである。 レコードの本文で明示的に宣言されていない場合は、これらのメンバーの暗黙的な実装が提供されます。

正規コンストラクターの暗黙的な宣言は、レコード クラスと同じアクセシビリティを持ち、対応するコンストラクター引数からコンポーネント フィールドを初期化します。 アクセサー メソッドの暗黙的な宣言は、対応するコンポーネント フィールドの値を返します。 Object#equals(Object)、Object#hashCode()、およびObject#toString()メソッドの暗黙的な宣言は、すべてのコンポーネント フィールドから派生します。

正規コンストラクターまたはアクセサー メソッドに明示的な宣言を提供する主な理由は、コンストラクターの引数の検証、変更可能なコンポーネントに対する防御コピーの実行、コンポーネントのグループの正規化 (有理数を最下位の用語に減らすなど) です。

すべてのレコード クラスについて、レコード R のコンポーネントが c1, c2, ... cnされている場合、レコード インスタンスが次のようにコピーされる場合は、次のインバリアントを保持する必要があります。

R copy = new R(r.c1(), r.c2(), ..., r.cn());

その場合は、 r.equals(copy)する必要があります。

16 で追加されました。

Javaドキュメント。

このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。

コンストラクター

名前 説明
Record()

呼び出すレコード クラスのコンストラクター。

Record(IntPtr, JniHandleOwnership)

JNI オブジェクトのマネージド表現を作成するときに使用されるコンストラクター。ランタイムによって呼び出されます。

プロパティ

名前 説明
Class

この Objectのランタイム クラスを返します。

(継承元 Object)
Handle

基になる Android インスタンスへのハンドル。

(継承元 Object)
JniIdentityHashCode

相互運用ランタイムによってこのJava ピアに割り当てられた ID ハッシュ コードを取得します。

(継承元 Object)
JniManagedPeerState

これは、すべてのJava言語レコード クラスの共通基本クラスです。

(継承元 JavaObject)
JniPeerMembers

このJava ピアのメンバーを呼び出すために使用される JNI メタデータを取得します。

PeerReference

このJava ピアの JNI オブジェクト参照を取得します。

(継承元 Object)
ThresholdClass

この API は Android 用 Mono インフラストラクチャをサポートしており、コードから直接使用するためのものではありません。

ThresholdType

この API は Android 用 Mono インフラストラクチャをサポートしており、コードから直接使用するためのものではありません。

メソッド

名前 説明
Clone()

このオブジェクトのコピーを作成して返します。

(継承元 Object)
Construct(JniObjectReference, JniObjectReferenceOptions)

これは、すべてのJava言語レコード クラスの共通基本クラスです。

(継承元 JavaObject)
Dispose()

このJava ピアによって保持されているリソースを解放します。

(継承元 Object)
Dispose(Boolean)

このJava ピアによって保持されているリソースを解放します。

(継承元 Object)
DisposeUnlessReferenced()

これは、すべてのJava言語レコード クラスの共通基本クラスです。

(継承元 JavaObject)
Equals(Object)

他のオブジェクトがこのオブジェクトと "等しい" かどうかを示します。

Equals(Object)

これは、すべてのJava言語レコード クラスの共通基本クラスです。

(継承元 JavaObject)
GetHashCode()

レコードのハッシュ コード値を返します。

JavaFinalize()
古い.

オブジェクトへの参照がなくなったとガベージ コレクションによって判断されたときに、オブジェクトのガベージ コレクターによって呼び出されます。

(継承元 Object)
Notify()

このオブジェクトのモニターで待機している 1 つのスレッドを起動します。

(継承元 Object)
NotifyAll()

このオブジェクトのモニターで待機しているすべてのスレッドを起動します。

(継承元 Object)
SetHandle(IntPtr, JniHandleOwnership)

Handle プロパティを設定します。

(継承元 Object)
SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

これは、すべてのJava言語レコード クラスの共通基本クラスです。

(継承元 JavaObject)
ToArray<T>()

このJava配列ラッパーからマネージド配列を作成します。

(継承元 Object)
ToString()

レコードの文字列形式を返します。

UnregisterFromRuntime()

相互運用ランタイムからこのJava ピアの登録を解除します。

(継承元 Object)
Wait()

現在のスレッドが起動するまで待機します。通常は、 <em>notified</em> または <em>interrupted</em>。

(継承元 Object)
Wait(Int64, Int32)

現在のスレッドは、通常、 <em>notified</em> または <em>interrupted</em>、または一定のリアルタイムが経過するまで、起動されるまで待機します。

(継承元 Object)
Wait(Int64)

現在のスレッドは、通常、 <em>notified</em> または <em>interrupted</em>、または一定のリアルタイムが経過するまで、起動されるまで待機します。

(継承元 Object)

明示的なインターフェイスの実装

名前 説明
IJavaPeerable.Disposed()

これは、すべてのJava言語レコード クラスの共通基本クラスです。

(継承元 JavaObject)
IJavaPeerable.Finalized()

これは、すべてのJava言語レコード クラスの共通基本クラスです。

(継承元 JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

これは、すべてのJava言語レコード クラスの共通基本クラスです。

(継承元 JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

これは、すべてのJava言語レコード クラスの共通基本クラスです。

(継承元 JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

これは、すべてのJava言語レコード クラスの共通基本クラスです。

(継承元 JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

これは、すべてのJava言語レコード クラスの共通基本クラスです。

(継承元 JavaObject)

拡張メソッド

名前 説明
GetJniTypeName(IJavaPeerable)

インスタンス selfの型の JNI 名を取得します。

JavaAs<TResult>(IJavaPeerable)

selfを強制的にTResult入力し、強制型がJava側で有効であることを確認します。

JavaCast<TResult>(IJavaObject)

Android ランタイムチェック型変換を実行します。

JavaCast<TResult>(IJavaObject)

これは、すべてのJava言語レコード クラスの共通基本クラスです。

TryJavaCast<TResult>(IJavaPeerable, TResult)

selfを強制的にTResult入力し、強制型がJava側で有効であることを確認します。

適用対象