在JAVA中,怎么利用反射获取一个方法?

Python015

在JAVA中,怎么利用反射获取一个方法?,第1张

java的反射用法:(异常请自行处理)

①找到类:Class cl = Class.forName("java.util.Date")

②创建对象(要求这个类中含有空参数的构造方法):Object obj = cl.newInstence()

③根据名称和参数找方法:Method method1 = cl.getMethod("getTime")//如果没有参数不用写第二个参数如果有参数的如:Method method2 = cl.getMethod("setTime",long.class)

④在某个对象上面执行方法,Object result = method1.invoke(obj)//如果有参数的Object result = method2.invoke(obj,21317362721)

执行的方如果有返回值,将返回值返回,否则返回null

java开发工程师岗位职责:

1、负责公司网站开发和维护;

2、负责对网站进行实施,测试;

3、负责现有网站的维护和升级;

4、负责解决开发过程中的技术问题;

5、负责网站开发文档编写工作;

6、统一代码风格、监督团队开发、落实测试、验收代码质量;

7、参与软件系统设计,能编写代码。

第一种:通过forName()方法;

第二种:类.class;

第三种:对象.getClass()。

举例如下:

package

test

public class Demo{

public static void

main(){

Class<?>c1 = null

Class<?>c2 =

null

Class<?>c3 =

null

//三种反射用实例化方式

try{

//最常用的一种形式

c1 =

Class.forName("test.X")

}catch(ClassNotFoundException

e){

e.printStackTrace()

}

//通过Object类中的方法实例化

c2

= new X().getClass()

//通过类.class实例化

c3 =

X.class

System.out.println("类名:" + c1.getName())

//得到类名

System.out.println("类名:" + c2.getName())

//得到类名

System.out.println("类名:" + c3.getName())

//得到类名

}

}