问题描述
提供的Java原生接口
In java native interface provided
jclass class = (*env)->FindClass(env,"ClassName");
和
jclass class = (*env)->GetObjectClass(env,"ClassName");
我想知道这两种方法之间的区别,以及如何使用类名来查找类
I would like to know difference between this two methods and how it find a class by using class name and what kind of situations it can be null.
推荐答案
GetObjectClass
要检索对象的类,不知道类名。 GetObjectClass
的第二个参数是 jobject
,而不是类名。
GetObjectClass
allows you to retrieve the class for an object, not knowing the class name. The second argument to GetObjectClass
is a jobject
, not a class name.
另一方面,如果你可以指定类名,FindClass给你一个类引用。
On the other hand, FindClass gives you a class reference if you can specify the class name.
因此,两个函数的结果都给出了类引用。区别是每个方法的输入(参数)。
So the result of both function gives the class reference. The difference is the input (argument) to each methods.
这篇关于“GetObjectClass”方法和“FindClass”方法差异和用法的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!