class Quizful {
private Double x = 2;
public static void multX(Quizful q, Double n) {
q.setX(q.getX() * n);
}
public Double getX() {
return x;
}
public void setX(Double x) {
this.x = x;
}
public static void tripleValue(Double x) {
x *= 3;
}
public static Quizful resetX(Quizful q) {
q = new Quizful();
return q;
}
public static void main(String[] args) {
Double x = 4;
tripleValue(x);
Quizful q = new Quizful();
multX(q,x);
resetX(q);
System.out.print(q.getX());
}
}
Actually this is case of Autoboxing and Unboxing. Changing to private Double x = 2.0; and Double x = 4.0; will fix situation
2015 Oct 2, 4:37:28 PM
line 3: error: incompatible types: int cannot be converted to Double private Double x = 2; ^ line 27: error: incompatible types: int cannot be converted to Double Double x = 4; ^
2015 Oct 2, 4:34:51 PM
Isn't it compilation error because of a static method trying to access non-static method?
2015 Oct 2, 2:45:26 PM
Войдите чтобы поставить Нравится
Войдите чтобы прокомментировать