【发布时间】:2016-03-13 09:19:58
【问题描述】:
public class CodingBat {
public static void main(String[] args) {
System.out.println(sumDouble(5,5));
}
public int sumDouble(int a, int b) {
if( a ==b) {
return 2*a + 2* b;
} else{
return a + b;
}
}
}
所以我做了这段代码,我真的很困惑为什么它不起作用,除非我在公共 int sumDouble 之间写静态,因为我正在练习codingBat,并回答他们不涉及静态的问题,但是那么他们如何测试代码。他们用主要的吗?我的意思是你必须让代码运行正确? 所以据我所知,静态意味着这个类的每个对象都将包含相同的值。但我没有看到这个错误的相关性。
“不能对非静态方法进行静态引用”
感谢您的帮助:D
【问题讨论】:
-
静态上下文,无法访问非静态方法。
-
不能从静态方法调用非静态方法。当你想在没有静态修饰符的情况下调用你的方法时,你需要创建一个 CodingBat 的实例:
new CodingBat().sumDouble(5, 5); -
那么你的问题是,他们如何测试我在第三方网站上编写的代码?
-
你为什么把对整数求和的方法命名为
sumDouble?