Java 如何调用非静态方法?
我写这段代码是为了确定一个数字是偶数还是奇数,如果是偶数,它将返回true,如果不是则返回false。给定的语法是publicbooleaniseven(intn),因此我无法更改它Java 如何调用非静态方法?,java,Java,我写这段代码是为了确定一个数字是偶数还是奇数,如果是偶数,它将返回true,如果不是则返回false。给定的语法是publicbooleaniseven(intn),因此我无法更改它 class Main { // Given public boolean isEven(int n) { // Given if(n % 2==0){// I wrote from this return true; }else{ return false; } }
class Main { // Given
public boolean isEven(int n) { // Given
if(n % 2==0){// I wrote from this
return true;
}else{
return false;
}
}
isEven(2); //To this
}
当我尝试运行此操作时,会出现以下错误:
exit status 1
Main.java:14: error: invalid method declaration; return type required
isEven(2);
^
Main.java:14: error: illegal start of type
isEven(2);
^
2 errors
要调用实例方法(非静态的
),您需要一个要调用的实例:
class Main {
public boolean isEven(int n) {
return n % 2==0;
}
public static void main(String[] args) {
Main obj = new Main();
System.out.println(obj.isEven(2));
}
}
还注意到将代码简化为单个语句。
您在类体的中间抛出了一个随机方法调用<代码> ISEnter(2)。它不属于那里。你能深入了解一下为什么要使用Main obj=new Main()?new Main()
创建一个类的实例,这个类的名称(有点混淆)是Main
。让方法isEven()
也是静态的不是更好吗?是的,但OP问如何调用非静态方法,所以答案确实准确地回答了这个问题。