您的位置:首页 > 其它

利用反射——动态调用类中的方法

2017-03-19 14:14 267 查看
在Java中,调用类的方法有两种方式:静态方法直接调用,非静态通过类的对象调用
在反射中可以根据需要指定要调用的方法,而不必在编程时确定,不仅限于public或者private
public class MethodTest {

public static void main(String[] args) {
try {
System.err.println("调用Math类的静态方法sin():");
Method sinMethod = Math.class.getDeclaredMethod("sin", Double.TYPE);
Double sin = (Double)sinMethod.invoke(null, new Integer(1));
System.out.println("1的正弦值是:"+sin);
System.err.println("调用String类的非静态方法equals():");
Method equalsMethod = String.class.getDeclaredMethod("equals",Object.class);
Boolean equals = (Boolean)equalsMethod.invoke(new String("柯基"),"柯基");
System.out.println("字符串是否是柯基:"+equals);
} catch (Exception e) {
e.printStackTrace();
}
}
}
输出结果如下:


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