我知道我们不能在静态方法内调用实例方法。但是,有什么办法可以解决这个问题?
以下方法是我的静态方法,而score.sumall是我的实例方法,它输出字符串九,五,十。我想通过System.out.println(averageScore(args));在主方法中调用此静态方法。不出所料,这给了我一个错误。但是,在这种静态方法中,有什么方法可以使用实例方法中的字符串结果9 + 5 + 10?或其他建议?
答案 0 :(得分:2)
将方法作为参数传递
public class score{
public String sumall()
{
// do something
return "outcome"; // test value
}
}
public static String averageScore(score s, String[] args) {
String outcome = "":
outcome += "average:" + s.sumall() + "/" + args.length;
return outcome:
}
averageScore(new score(),new String[]{"1","2"})