言語

Observable クラス

定義

このクラスは、監視可能なオブジェクト、つまりモデル ビュー パラダイムの "データ" を表します。

[Android.Runtime.Register("java/util/Observable", DoNotGenerateAcw=true)]
public class Observable : Java.Lang.Object
[<Android.Runtime.Register("java/util/Observable", DoNotGenerateAcw=true)>]
type Observable = class
    inherit Object
継承
Observable
派生
属性

注釈

このクラスは、監視可能なオブジェクト、つまりモデル ビュー パラダイムの "データ" を表します。 サブクラス化して、アプリケーションが観察するオブジェクトを表すことができます。

観測可能なオブジェクトには、1 つ以上のオブザーバーを含めることができます。 オブザーバーには、インターフェイス Observerを実装する任意のオブジェクトを指定できます。 監視可能なインスタンスが変更されると、 ObservablenotifyObservers メソッドを呼び出すアプリケーションによって、 update メソッドの呼び出しによってすべてのオブザーバーに変更が通知されます。

通知を配信する順序は指定されていません。 Observable クラスで提供される既定の実装では、関心を登録した順序でオブザーバーに通知しますが、サブクラスはこの順序を変更したり、保証された順序を使用したり、個別のスレッドで通知を配信したり、サブクラスが選択した順序に従っていることを保証したりできます。

この通知メカニズムはスレッドとは何の関係もなく、クラス waitnotifyおよびObjectメカニズムとは完全に切り離されていることに注意してください。

観測可能なオブジェクトが新しく作成されると、オブザーバーのセットは空になります。 equals メソッドが true を返した場合にのみ、2 つのオブザーバーは同じと見なされます。

1.0 で追加されました。

このメンバーは非推奨です。 このクラスと Observer インターフェイスは非推奨になりました。 ObserverObservableでサポートされるイベント モデルは非常に制限されており、Observableによって配信される通知の順序は指定されておらず、状態の変更は通知との 1 対 1 の対応ではありません。 より豊富なイベント モデルについては、 java.beans パッケージの使用を検討してください。 スレッド間で信頼性が高く順序付けられたメッセージングを行う場合は、 java.util.concurrent パッケージ内の同時実行データ構造の 1 つを使用することを検討してください。 リアクティブ ストリーム スタイルのプログラミングについては、 java.util.concurrent.Flow API を参照してください。

Javaドキュメント。

このページの一部は、Androidオープンソースプロジェクトによって作成および共有された作業に基づく変更でありCreative Commons 2.5属性ライセンスに記載されている条件に従って使用されます。

コンストラクター

名前 説明
Observable()

オブザーバーが 0 個の Observable を構築します。

Observable(IntPtr, JniHandleOwnership)

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

プロパティ

名前 説明
Class

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

(継承元 Object)
Handle

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

(継承元 Object)
HasChanged

このオブジェクトが変更されたかどうかをテストします。

JniIdentityHashCode

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

(継承元 Object)
JniManagedPeerState

このクラスは、監視可能なオブジェクト、つまりモデル ビュー パラダイムの "データ" を表します。

(継承元 JavaObject)
JniPeerMembers

このクラスは、監視可能なオブジェクト、つまりモデル ビュー パラダイムの "データ" を表します。

PeerReference

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

(継承元 Object)
ThresholdClass

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

ThresholdType

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

メソッド

名前 説明
AddObserver(IObserver)

このオブジェクトのオブザーバーのセットにオブザーバーを追加します。ただし、既にセット内の一部のオブザーバーと同じでない場合です。

ClearChanged()

このオブジェクトが変更されなくなったことを示します。または、 hasChanged メソッドが falseを返すように、そのオブジェクトが最新の変更をオブザーバー全員に既に通知していることを示します。

Clone()

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

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

このクラスは、監視可能なオブジェクト、つまりモデル ビュー パラダイムの "データ" を表します。

(継承元 JavaObject)
CountObservers()

この Observable オブジェクトのオブザーバーの数を返します。

DeleteObserver(IObserver)

このオブジェクトのオブザーバーのセットからオブザーバーを削除します。

DeleteObservers()

オブザーバー リストをクリアして、このオブジェクトにオブザーバーが存在しないようにします。

Dispose()

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

(継承元 Object)
Dispose(Boolean)

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

(継承元 Object)
DisposeUnlessReferenced()

このクラスは、監視可能なオブジェクト、つまりモデル ビュー パラダイムの "データ" を表します。

(継承元 JavaObject)
Equals(Object)

このクラスは、監視可能なオブジェクト、つまりモデル ビュー パラダイムの "データ" を表します。

(継承元 JavaObject)
Equals(Object)

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

(継承元 Object)
GetHashCode()

オブジェクトのハッシュ コード値を返します。

(継承元 Object)
JavaFinalize()

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

(継承元 Object)
Notify()

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

(継承元 Object)
NotifyAll()

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

(継承元 Object)
NotifyObservers()

hasChanged メソッドで示されているように、このオブジェクトが変更された場合は、すべてのオブザーバーに通知し、clearChanged メソッドを呼び出して、このオブジェクトが変更されていないことを示します。

NotifyObservers(Object)

hasChanged メソッドで示されているように、このオブジェクトが変更された場合は、すべてのオブザーバーに通知し、clearChanged メソッドを呼び出して、このオブジェクトが変更されていないことを示します。

SetChanged()

この Observable オブジェクトを変更済みとしてマークします。 hasChanged メソッドは trueを返します。

SetHandle(IntPtr, JniHandleOwnership)

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

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

このクラスは、監視可能なオブジェクト、つまりモデル ビュー パラダイムの "データ" を表します。

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

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

(継承元 Object)
ToString()

オブジェクトの文字列形式を返します。

(継承元 Object)
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()

このクラスは、監視可能なオブジェクト、つまりモデル ビュー パラダイムの "データ" を表します。

(継承元 JavaObject)
IJavaPeerable.Finalized()

このクラスは、監視可能なオブジェクト、つまりモデル ビュー パラダイムの "データ" を表します。

(継承元 JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

このクラスは、監視可能なオブジェクト、つまりモデル ビュー パラダイムの "データ" を表します。

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

このクラスは、監視可能なオブジェクト、つまりモデル ビュー パラダイムの "データ" を表します。

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

このクラスは、監視可能なオブジェクト、つまりモデル ビュー パラダイムの "データ" を表します。

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

このクラスは、監視可能なオブジェクト、つまりモデル ビュー パラダイムの "データ" を表します。

(継承元 JavaObject)

拡張メソッド

名前 説明
GetJniTypeName(IJavaPeerable)

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

JavaAs<TResult>(IJavaPeerable)

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

JavaCast<TResult>(IJavaObject)

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

JavaCast<TResult>(IJavaObject)

このクラスは、監視可能なオブジェクト、つまりモデル ビュー パラダイムの "データ" を表します。

TryJavaCast<TResult>(IJavaPeerable, TResult)

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

適用対象