我正在将一些本机方法重写为常规Java方法。
原生方法是否有效静态?或者有没有他们有一个隐含的'this'参数的情况?
谢谢!
答案 0 :(得分:23)
本机方法可以是static
或非static
,就像常规Java方法一样。
非static
原生方法会收到this
引用,而static
会收到对包含类的引用。
原生方法参数
JNI接口指针是本机方法的第一个参数。 JNI接口指针的类型为JNIEnv。第二个参数根据本机方法是静态方法还是非静态方法而有所不同。非静态本机方法的第二个参数是对该对象的引用。静态本机方法的第二个参数是对其Java类的引用。