語言

JavaPeerProxy 類別

定義

基礎屬性類別用於產生代理型別,能在 Java 與 .NET 類型間實現 AOT 安全的型別映射。

[System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Interface, AllowMultiple=false, Inherited=false)]
public abstract class JavaPeerProxy : Attribute
[<System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Interface, AllowMultiple=false, Inherited=false)>]
type JavaPeerProxy = class
    inherit Attribute
繼承
JavaPeerProxy
屬性

備註

代理屬性會在建置時產生,並套用到代理類型本身(自我應用模式)。 .NET 執行時GetCustomAttribute<JavaPeerProxy>()會以 AOT 安全的方式實例化代理——不需要Activator.CreateInstance()。

建構函式

名稱 Description
JavaPeerProxy(String, Type)

基礎屬性類別用於產生代理型別,能在 Java 與 .NET 類型間實現 AOT 安全的型別映射。

屬性

名稱 Description
JniName

取得該代理所代表的 Java 類別的最終 JNI 類型名稱。

TargetType

取得該代理所代表的目標 .NET 類型。

方法

名稱 Description
CreateInstance(IntPtr, JniHandleOwnership)

使用 JNI 的 handle 與所有權語意,建立目標類型的實例。 這取代了舊有路徑中基於反射的建構器調用。

GetActivationPeer(IntPtr)

基礎屬性類別用於產生代理型別,能在 Java 與 .NET 類型間實現 AOT 安全的型別映射。

MarkActivationPeerReplaceable(IntPtr)

基礎屬性類別用於產生代理型別,能在 Java 與 .NET 類型間實現 AOT 安全的型別映射。

SetActivationPeerReference(IJavaPeerable, IntPtr)

基礎屬性類別用於產生代理型別,能在 Java 與 .NET 類型間實現 AOT 安全的型別映射。

ShouldSkipActivation(IntPtr)

當 UCO 建構器回撥應該跳過啟用,因為該 JNI handle 已存在受管理對等端時(例如,當從已註冊的對等節點後StartCreateInstance被呼叫FinishCreateInstance時),該回true傳。

適用於