java的一个简单程序出了点问题,请各位大哥帮忙

yimaoyingbi 2011-07-04 12:35:41
import java.util.Random;
import java.util.Scanner;
public class JiaFa
{
int a;
int b;
int sum;
public JiaFa()
{
Random random = new Random();
this.a = random.nextInt(10);
this.b = random.nextInt(10);
System.out.println(a + "+" + b+ "=");
return sum = a + b ;

}

public static void main(String[] args)
{


JiaFa he = new JiaFa();
Scanner sc = new Scanner(System.in);
int c = sc.nextInt();
if( he.sum == c)
{
System.out.println("正确。");
}
else
{
System.out.println("错误,正确答案为: " + he.sum );
}
}
}
myeclipse提示我return sum = a + b;处错误。void methods cannot return a value.但是我的方法没有void啊,不明白。
...全文
113 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
sugarsxo 2011-07-04
  • 打赏
  • 举报
回复
public int JiaFa()
{}

返回的是int型整数,应该标明其返回值类型
飞跃颠峰 2011-07-04
  • 打赏
  • 举报
回复
JiaFa()是构造函数
构造函数中不能显性地返回任何值
你再换个思路想一下,一般的方法返回值,是要返回给调用它的代码使用。构造方法如果返回值,给谁用?
调用构造方法目的是创建一个实例对象,因此它如果返回,也是返回构造的这个实例,就算这是隐性地返回的,无需写个return语句。
TKD03072010 2011-07-04
  • 打赏
  • 举报
回复

public JiaFa()
{
Random random = new Random();
this.a = random.nextInt(10);
this.b = random.nextInt(10);
System.out.println(a + "+" + b+ "=");
return sum = a + b ;

}
楼主在构造方法中 return sum = a + b ;
构造方法是不能有返回值的
所以 编译当然报错
寒拓冰 2011-07-04
  • 打赏
  • 举报
回复
那个Jiafa()应该是构造方法吧,怎么能有返回值呢
riyuezhizhi 2011-07-04
  • 打赏
  • 举报
回复
不能return
riyuezhizhi 2011-07-04
  • 打赏
  • 举报
回复
构造方法不能有返回值

51,408

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧