「java反射实例教程视频」java反射使用方法

博主:adminadmin 2022-12-08 08:33:06 61

本篇文章给大家谈谈java反射实例教程视频,以及java反射使用方法对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

如何使用java反射/java反射实例

public class Demo {

    private String key1 = "1";

    private String key2 = "2";

    public String getKey1() {

        return key1;

    }

    public void setKey1(String key1) {

        this.key1 = key1;

    }

    public String getKey2() {

        return key2;

    }

    public void setKey2(String key2) {

        this.key2 = key2;

    }

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

        //参数  “Demo” 是类的全名,如果在包结构下,要有完整包路径 比如: com.test.Demo

        Class? clazz = Class.forName("Demo");

        //“Demo”类必须有默认构造方法,否则会抛出异常

        Demo demo = (Demo) clazz.newInstance();

        System.out.println(demo.getKey1());

        System.out.println(demo.getKey2());

    }

}

java反射机制实例

import java.lang.reflect.Method;

public class InvokeTester

{

public int add(int param1, int param2)

{

return param1 + param2;

}

public String echo(String message)

{

return "hello: " + message;

}

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

{

Class? classType = InvokeTester.class;

Object invokeTester = classType.newInstance();

// System.out.println(invokeTester instanceof InvokeTester); //返回true

Method addMethod = classType.getMethod("add", new Class[] { int.class,int.class }); //第二个形参表示指定的add方法要接收为int的类型的两个参数

Object result = addMethod.invoke(invokeTester, new Object[]{1, 2}); //反射调用,将1,2传入InvokeTester.Class的实例invokeTester里的add方法。得返回的结果。

System.out.println((Integer)result);

System.out.println("---------------------");

Method echoMethod = classType.getMethod("echo", new Class[]{String.class});

Object result2 = echoMethod.invoke(invokeTester, new Object[]{"tom"});

System.out.println((String)result2);

}

}

java反射怎么实现的

Java中反射有如下几种实现方式:

1、通过Class.forName()方法加载字符串,就可以得到该字符串做代表的Class对象。

2、通过类名调用class属性得到该类的Class对象。

例如:Class? clazz = String.class也可以得到String类的Class对象。

3、调用实例的getClass()方法。

例如:Date date = new Date();

Class? clazz = date.getClass();

通过上边的两句代码就可以得到date实例的Class对象。

关于java反射实例教程视频和java反射使用方法的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

The End

发布于:2022-12-08,除非注明,否则均为首码项目网原创文章,转载请注明出处。