首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java相关 >

一个静态方法能够将另一个静态方法作为参数吗?该怎么处理

2013-12-28 
一个静态方法能够将另一个静态方法作为参数吗?我在http://book.douban.com/subject/19952400/这本书里看到

一个静态方法能够将另一个静态方法作为参数吗?
我在http://book.douban.com/subject/19952400/这本书里看到说不行
但是


public class Test1 {
public static void main(String[] args) {
A.abc(A.xyz());
}
}
class A{
public static void abc(int x){
System.out.println(x);
}
public static int xyz(){
return 1;
}
}

以上代码可以编译运行
书上是错的吗?
[解决办法]
那是因为,xyz返回了一个int型,这个值作为abc的入参的。
LZ可以试试,将xyz返回类型改成String什么的,就会报错了。
[解决办法]
没错, A.abc(A.xyz());相当于 int x = A.xyz();A.abc(x);
[解决办法]
这个没问题,可以运行的。其实静态方法和类的关系不大,你这其实等于在面向过程编程中一个函数调了另一个函数而已
[解决办法]
对啊,这两者没有直接的冲突的
[解决办法]
http://baike.baidu.com/view/1289389.htm

热点排行