如何在接口(interface)的 jni 中实现与 InstanceOf 相同的功能。 JNi 仅适用于类对象。但 java 关键字也适用于接口(interface)。
最佳答案
接口(interface)也有与之关联的类对象,因此您可以使用 IsInstanceOf
对于接口(interface)。例如,以下程序检查 String
是否是接口(interface) CharSequence
的一个实例(它是):
public static void main(String[] args) {
String s = "Test";
System.out.println(m(CharSequence.class, s)); // prints 'true'
}
public static native boolean m(Class<?> cls, Object o);
JNIEXPORT jboolean JNICALL Java_Main_m(JNIEnv *env, jclass dc, jclass intf, jobject o) {
return (*env)->IsInstanceOf(env, o, intf);
}
关于java - jni 中接口(interface)的 isinstance,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48815367/