您的位置:首页 > 编程语言 > Java开发

java反射相关要素

2018-02-07 14:43 197 查看
public class Main {

    public static void main(String[] args) throws Exception{

        //返回A的构造方法

        Constructor c = A.class.getConstructor();

        //返回A类的所有为public 声明的构造方法

        Constructor[] cons = A.class.getConstructors();

        //返回A类所有的构造方法,包括private

        Constructor[] cons2 = A.class.getDeclaredConstructors();

        //返回A类的第一个public 方法

        Method m = A.class.getMethod("say");

        //执行

        m.invoke(A.class.newInstance(), null);

        //返回A类所有的public 方法

        Method[] ms = A.class.getMethods();

        //返回A类所有的方法,包括private

        Method[] allMs = A.class.getDeclaredMethods();

        //返回A类的public字段

        Field field = A.class.getField("i");

        System.out.println(field.get(A.class.newInstance()));

        //返回A类的static 字段

        System.out.println(field.get(null));

    }

}

class A{

    public int i = 1;

    public static int b = 2;

    public A(){

        System.out.println("无参构造");

    }

    private A(String s){

        System.out.println("有参构造"+s);

    }

    

    public void say(){

        System.out.println("say");

    }

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: