簡體   English   中英

JNI 中此方法的簽名是什么?

[英]What will be the signature for this method in JNI?

JNI 中此方法的簽名是什么?

public static <T> Field test(Class<T> test0, String test1)

只需制作一個 class 並構建它!

public class Test1  {
    public static <T> Field test(Class<T> test0, String test1) { return null; }
}

然后使用 javap 的 -s 選項獲取您的 JNI 簽名。 參見“描述符”:

$ javap -s ./target/classes/net/redpoint/test/Test1.class
Compiled from "Test1.java"
public class net.redpoint.test.Test1 {
  public net.redpoint.test.Test1();
    descriptor: ()V

  public static <T> java.lang.reflect.Field test(java.lang.Class<T>, java.lang.String);
    descriptor: (Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/reflect/Field;
}

也就是說,在進行 JNI 調用時要非常小心地匹配泛型的類型。 JNI 非常挑剔,並且會以可怕的方式崩潰。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM