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
派生
属性

注解

此类表示模型视图范例中的可观察对象或“数据”。 它可以进行子类化以表示应用程序想要观察到的对象。

可观测对象可以有一个或多个观察程序。 观察者可以是实现接口 Observer的任何对象。 在可观察实例更改后,调用 ObservablenotifyObservers 方法的应用程序会通过调用其 update 方法来通知其所有观察程序发生更改。

未指定通知的传递顺序。 Observable 类中提供的默认实现将按照其注册兴趣的顺序通知观察者,但子类可以更改此顺序、不使用保证顺序、在单独的线程上传递通知,或者可以保证其子类按其选择遵循此顺序。

请注意,此通知机制与线程无关,与 类 Object的 和 notify 机制完全分离wait

新创建可观察对象时,其观察程序集为空。 当并且仅当方法为它们返回 true 时, equals 两个观察程序才被视为相同。

在 1.0 中添加。

此成员已弃用。 此类和 Observer 接口已弃用。 和 Observable 支持Observer的事件模型非常有限,传递的Observable通知顺序未指定,状态更改与通知不一致。 对于更丰富的事件模型,请考虑使用 java.beans 包。 对于线程之间的可靠有序消息传送,请考虑在包中使用 java.util.concurrent 其中一个并发数据结构。 有关反应式流样式编程,请参阅 java.util.concurrent.Flow API。

java.util.ObservableJava 文档。

此页面的某些部分是基于 创建和共享的工作进行的修改,并根据 署名许可中所述的条款使用。

构造函数

Observable()

构造一个具有零观察程序的可观测对象。

Observable(IntPtr, JniHandleOwnership)

创建 JNI 对象的托管表示形式时使用的构造函数;由运行时调用。

属性

Class

返回此 Object的运行时类。

(继承自 Object)
Handle

基础 Android 实例的句柄。

(继承自 Object)
HasChanged

测试此对象是否已更改。

JniIdentityHashCode

此类表示模型视图范例中的可观察对象或“数据”。

(继承自 Object)
JniPeerMembers

此类表示模型视图范例中的可观察对象或“数据”。

PeerReference

此类表示模型视图范例中的可观察对象或“数据”。

(继承自 Object)
ThresholdClass

此 API 支持 Mono for Android 基础结构,不应直接从代码中使用。

ThresholdType

此 API 支持 Mono for Android 基础结构,不应直接从代码中使用。

方法

AddObserver(IObserver)

将观察程序添加到此对象的观察程序集中,前提是该观察程序与集中已有的观察程序不同。

ClearChanged()

指示此对象不再更改,或者它已通知其所有观察者其最新更改,因此该方法 hasChanged 现在将返回 false

Clone()

创建并返回此对象的副本。

(继承自 Object)
CountObservers()

返回此 Observable 对象的观察程序数。

DeleteObserver(IObserver)

从此 对象的观察程序集中删除观察程序。

DeleteObservers()

清除观察程序列表,使此对象不再具有任何观察程序。

Dispose()

此类表示模型视图范例中的可观察对象或“数据”。

(继承自 Object)
Dispose(Boolean)

此类表示模型视图范例中的可观察对象或“数据”。

(继承自 Object)
Equals(Object)

指示某个其他对象是否“等于”此对象。

(继承自 Object)
GetHashCode()

返回对象的哈希代码值。

(继承自 Object)
JavaFinalize()

当垃圾回收确定不再引用对象时,由垃圾回收器对对象调用。

(继承自 Object)
Notify()

唤醒正在等待此对象的监视器的单个线程。

(继承自 Object)
NotifyAll()

唤醒正在等待此对象的监视器的所有线程。

(继承自 Object)
NotifyObservers()

如果此对象已更改(如 方法所示 hasChanged ),则通知其所有观察程序,然后调用 clearChanged 方法以指示此对象不再更改。

NotifyObservers(Object)

如果此对象已更改(如 方法所示 hasChanged ),则通知其所有观察程序,然后调用 clearChanged 方法以指示此对象不再更改。

SetChanged()

将此 Observable 对象标记为已更改; hasChanged 方法现在将返回 true

SetHandle(IntPtr, JniHandleOwnership)

设置 Handle 属性。

(继承自 Object)
ToArray<T>()

此类表示模型视图范例中的可观察对象或“数据”。

(继承自 Object)
ToString()

返回对象的字符串表示形式。

(继承自 Object)
UnregisterFromRuntime()

此类表示模型视图范例中的可观察对象或“数据”。

(继承自 Object)
Wait()

导致当前线程等待,直到它被唤醒,通常是通过 em <通知/em> 或 <em>interrupted</em>。<>

(继承自 Object)
Wait(Int64)

导致当前线程等待,直到它被唤醒,通常是通过 em <通知/em> 或 <em>interrupted</em>,或直到经过一定数量的实时。<>

(继承自 Object)
Wait(Int64, Int32)

导致当前线程等待,直到它被唤醒,通常是通过 em <通知/em> 或 <em>interrupted</em>,或直到经过一定数量的实时。<>

(继承自 Object)

显式接口实现

IJavaPeerable.Disposed()

此类表示模型视图范例中的可观察对象或“数据”。

(继承自 Object)
IJavaPeerable.DisposeUnlessReferenced()

此类表示模型视图范例中的可观察对象或“数据”。

(继承自 Object)
IJavaPeerable.Finalized()

此类表示模型视图范例中的可观察对象或“数据”。

(继承自 Object)
IJavaPeerable.JniManagedPeerState

此类表示模型视图范例中的可观察对象或“数据”。

(继承自 Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

此类表示模型视图范例中的可观察对象或“数据”。

(继承自 Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

此类表示模型视图范例中的可观察对象或“数据”。

(继承自 Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

此类表示模型视图范例中的可观察对象或“数据”。

(继承自 Object)

扩展方法

JavaCast<TResult>(IJavaObject)

执行 Android 运行时检查的类型转换。

JavaCast<TResult>(IJavaObject)

此类表示模型视图范例中的可观察对象或“数据”。

GetJniTypeName(IJavaPeerable)

此类表示模型视图范例中的可观察对象或“数据”。

适用于