IJavaPeerable 介面
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
支援使用 Java 物件實例。
public interface IJavaPeerable : IDisposable
type IJavaPeerable = interface
interface IDisposable
- 衍生
- 實作
備註
介面IJavaPeerable提供存取 Java 物件實例、調用該 Java 實例成員、控制該物件實例的生命週期,以及包裝器被處置或最終定稿時的回調。 允許的操作如下:
- 物件實例存取可透過該 PeerReference 屬性取得。 :
- 會員可透過 JniPeerMembers 該物業進行存取與祈禱。 :
- 物件壽命控制與Java.Interop.IJavaPeerable.DisposeDisposeUnlessReferenced()方法。 :
- 價值可見度透過 Java.Interop.IJavaPeerable.DisposeUnlessRegistered來控制。 :
- 處理與最終回撥透過 Disposed() and Finalized() 方法進行。 :
請勿實作此介面。
若沒有PeerReference回傳非default(JniObjectReference)值的實作,此介面的實作毫無用處,而null非值對應於 Java 虛擬機器中的 雖然這可以做到,但通常無法執行,導致 Java 產生「意外」NullPointerException錯誤。 此外,即使你可以實作 PeerReference,任何實作都無法與垃圾回收器結合,導致記憶體洩漏或額外清理數值。
</區塊>
屬性
| 名稱 | Description |
|---|---|
| JniIdentityHashCode |
回傳包裹實例的 |
| JniManagedPeerState |
管理貴族的狀況。 |
| JniObjectReferenceControlBlock |
支援使用 Java 物件實例。 |
| JniPeerMembers |
成員存取與召喚支援。 |
| PeerReference |
回傳JniObjectReference包裹後的 Java 物件實例。 |
方法
| 名稱 | Description |
|---|---|
| Disposed() |
當實例被處理後才被召喚。 |
| DisposeUnlessReferenced() |
如果沒有未解決的參考資料,則 |
| Finalized() |
當實例完成後才會被通知。 |
| SetJniIdentityHashCode(Int32) |
將回傳的值設為 |
| SetJniManagedPeerState(JniManagedPeerStates) |
支援使用 Java 物件實例。 |
| SetPeerReference(JniObjectReference) |
將回傳的值設為 |
| UnregisterFromRuntime() |
取消註冊此實例,讓執行時不會在未來 Java.Interop.JniRuntime+JniValueManager.PeekValue 的呼叫中回傳該實例。 |
擴充方法
| 名稱 | Description |
|---|---|
| GetJniTypeName(IJavaPeerable) |
取得實例 |
| JavaAs<TResult>(IJavaPeerable) |
試著強制 |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
試著強制 |