HelloWorld 善战者,求之于势,不责于人;故能择人而任势。

知止而后有定,定而后能静,静而后能安,安而后能虑,虑而后能得。物有本末,事有终始。知所先后,则近道矣。

  BlogJava :: 首页 ::  :: 联系 ::  :: 管理 ::
  167 随笔 :: 1 文章 :: 40 评论 :: 0 Trackbacks

如有个类
class A {
    public native int add(int a, int b) ;
}

我们想要知道方法add的public , native 的关键字

import java.lang.reflect.Method; class Test {
    public static void main(String args[]) {
        Class[] clses = {int.class,int.class};
        Method m = A.class.getDeclaredMethod("add", clses);
       int modifers = m.getModifiers();
        //1.判断是否为native
       modifers = modifers %512;
       modifers = modifers >> 8;
       if (modifers != 1) {
            System.out.println("error");
       }    
        // 2....
    }
} 根据java中的定义表,按位存放的标记,参考如下
java.lang.reflect.Modifier
public static final int ABSTRACT 1024
public static final int FINAL 16
public static final int INTERFACE 512
public static final int NATIVE 256
public static final int PRIVATE 2
public static final int PROTECTED 4
public static final int PUBLIC 1
public static final int STATIC 8
public static final int STRICT 2048
public static final int SYNCHRONIZED 32
public static final int TRANSIENT 128
public static final int VOLATILE 64


</script>

posted on 2007-11-30 10:31 helloworld2008 阅读(1653) 评论(2)  编辑  收藏 所属分类: java

评论

# re: Java 判断某个方法的public,native等标识 2007-11-30 20:30 oracle
不错啊  回复  更多评论
  

# re: Java 判断某个方法的public,native等标识 2008-06-15 17:15 asdf
你舍近求远啊?  回复  更多评论
  


只有注册用户登录后才能发表评论。


网站导航: