黑马程序员技术交流社区
标题:
问题出在哪里?
[打印本页]
作者:
常文艺
时间:
2011-11-21 13:32
标题:
问题出在哪里?
本帖最后由 常文艺 于 2011-11-21 13:50 编辑
public class FunctionOverload
{
public static void main(String agrs[])
{
int sum=he(4,5);
System.out.println(a+"*"+x+"="+a*x);
}
第6行报错
public static int he(int a,int x)
{
return a*x;
}
}
作者:
杨玉揆
时间:
2011-11-21 13:39
System.out.println(a+"*"+x+"="+a*x);中的x和a 和下面的是不一样的,你必须的先定义如int a=4,int x =5;a 和x只是一个局部变量而已 只能在he这个函数里面起作用 出了这个函数没有了
作者:
侯伟浩
时间:
2011-11-21 13:42
a和x在main方法中没有定义
作者:
袁世宇
时间:
2011-11-21 13:45
本帖最后由 袁世宇 于 2011-11-21 13:50 编辑
a和x是当he的参数传递的 ,你可以改成这样System.out.println("a*x="+a*x); 当作一个字符串,还有 为什么你都求sum的值了
还有写a*x呢 直接System.out.println("a*x="+sum);就可以啦
作者:
冯敏
时间:
2011-11-21 14:27
a和x必须在类中定义,int he()方法中的a、x在he()方法中属于局部变量,出了该方法就没作用啦,可以这样改:int a =4; int x = 5; int sum=he(a,x); System.out.println(a+"*"+x+"="+sum);
作者:
肖岑锋
时间:
2011-11-21 14:31
a不是成员变量而是局部变量,只能在本方法内用。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2