public class TestEquals{
public static void main(String[] args){
Object circled1 = new Circled();
Object circled2 = new Circled();
System.out.println(circled1.equals(circled2));
}}
class Circled{
double radius;
public boolean equals(Circled circled){
return this.radius == circled.radius;
}
}编译时候第三四行出错,non-static variable this cannot be referenced from a static context
为什么?
public static void main(String[] args){
Object circled1 = new Circled();
Object circled2 = new Circled();
System.out.println(circled1.equals(circled2));
}}
class Circled{
double radius;
public boolean equals(Circled circled){
return this.radius == circled.radius;
}
}编译时候第三四行出错,non-static variable this cannot be referenced from a static context
为什么?
我也不知道运行结果,就是想看结果啊.
但是这里是错误的:
public boolean equals(Circled circled)
因为equals方法是:object1.equals(object2)
ontext
Object circled1 = new Circled();
^
TestEquals.java:4: non-static variable this cannot be referenced from a static c
ontext
Object circled2 = new Circled();
^
2 errors
可能你出的不是程序方面的问题
为什么我编译不过呢?结果应该是false
class Circled{
double radius;
public boolean equals(Circled circled){
return this.radius == circled.radius;
}
}
修改为
class Circled{
double radius;
public boolean equals(Object circled){
return this.radius == ((Circled)circled).radius;
}
}
这样应该就可以得出正确结果.
System.out.println(a.equals(v));
public static void main(String[] args){
Circled circled1 = new Circled();
Circled circled2 = new Circled();
System.out.println(circled1.equals(circled2));
} }
class Circled{
public double radius;
public boolean equals(Circled circled){
return this.radius == circled.radius;
}
}
你看一下这样可不可以了,,
结果是false
run-single:
true
BUILD SUCCESSFUL (total time: 1 second)
结贴了~