java 方法指针问题

来源:百度知道 编辑:UC知道 时间:2024/06/30 19:18:02
public static void main(String[] args)
{
Method m = Math.class.getMethod("sqrt", double.class);
double x = (double)m.invoke(null, 10);//为什么这句有红线
}

public static void main(String[] args) throws Exception {
Method m = Math.class.getMethod("sqrt", double.class);
double x = (Double)m.invoke(null, 10);//为什么这句有红线
}

invoke方法返回的是一个对象,转换成基本类型肯定不行的,对象只能转换成对象,这里转换成Double后在自动拆箱成double

另外,java中没有方法指针的概念!你用的这叫java反射机制

你的Method是什么啊
看下你Method类里面的invoke方法是怎么写的

java里没指针

这个是类型转换出错,和指针没有关系!

Java里面的指针可以理解成对象的引用!

老师教你的 传值还是传地址 可以理解为传值还是传引用

学Java没有前途的,LZ赶紧换个。。。。