Java Modifier isNative(mod)方法及实例
java.lang.reflect.Modifier 的 isNative(mod) 方法用于检查整数参数是否包括本地修改器。如果这个整数参数代表本地类型的修改器,那么该方法返回true,否则返回false。
语法
public static boolean isNative(int mod)
参数: 该方法接受一个整数名称,因为mod代表一组修改器。
返回 :如果修改器包括本地修改器,该方法返回真,否则返回假。
下面的程序说明了isNative()方法:
程序1 :
// Java program to illustrate isNative() method import java.lang.reflect.Method;import java.lang.reflect.Modifier; public class GFG { public static void main(String[] args) throws NoSuchFieldException { // get Method class object Method[] methods = Calculator.class.getMethods(); // get Modifier Integer value int mod = methods[0].getModifiers(); // check Modifier is native or not boolean result = Modifier.isNative(mod); System.out.println("Mod integer value " + mod + " is native : " + result); } class Calculator { native void addNumbers(); }}
输出。
Mod integer value 17 is native : false
程序2
// Java program to illustrate isNative() import java.lang.reflect.*; public class GFG { public static void main(String[] args) { // get Method class object Method[] methods = Numbers.class.getMethods(); // get Modifier Integer value int mod1 = methods[0].getModifiers(); int mod2 = methods[1].getModifiers(); // check Modifiers are native or not boolean result1 = Modifier.isNative(mod1); boolean result2 = Modifier.isNative(mod2); // print results System.out.println("Mod integer value " + mod1 + " for method " + methods[0].getName() + " is native : " + result1); System.out.println("Mod integer value " + mod2 + " for method" + methods[1].getName() + " is native : " + result2); } // sample native class abstract class Numbers { abstract public int initializeNumber(); int declareNumbers() { return 0; } }}输出。
Mod integer value 1025 for method initializeNumber is native : falseMod integer value 17 for methodwait is native : false
**参考文献: ** https://docs.oracle.com/javase/10/docs/api/java/lang/reflect/Modifier.html#isNative(int)
