setter 中的 if 语句有问题
There is something wrong with the if-statement in our setter
我们正在使用 if 语句创建 setter。我们试图限制批准的值,并使用打印方法打印出设置的值,或者 "wrong" 如果该值不被接受。
这是方法:
Public class Sykkel extends Kjøretøy
{
private int height;
public Sykkel(String colour)
{
// initialise instance variables
super(1, colour);
this.height = height;
}
public void setHeight (int height) {
if(height > 35 && height < 70){
System.out.println("Sykkelen er " + height + " cm høy.");
} else {
System.out.println("Wrong");
}
}
public int getHeight() {
return height;
}
无论我们设置什么高度它都会打印出来"Wrong"。有人看到代码中的错误了吗?
我们已经尝试了 this.height 和高度,但结果仍然相同。
提前致谢。
setter方法中没有赋值,只是追加
this.height = height;
public void setHeight (int height) {
if(height > 35 && height < 70){
System.out.println("Sykkelen er " + height + " cm høy.");
} else {
System.out.println("Wrong");
}
this.height = height;
}
我的观察。
你的构造函数应该是:
public Sykkel(String colour, int height)
{
// initialise instance variables
super(1, colour);
this.height = height;
}
在您的setHeight
方法中,您需要将高度分配给实例变量。
public void setHeight (int height) {
if(height > 35 && height < 70){
System.out.println("Sykkelen er " + height + " cm høy.");
} else {
System.out.println("Wrong");
}
// add the below line:
this.height = height;
}
另一种方法似乎还可以。
当我调用 setHeight(40);
时,我收到
Sykkelen er 40 cm høy.
希望对您有所帮助!
我们正在使用 if 语句创建 setter。我们试图限制批准的值,并使用打印方法打印出设置的值,或者 "wrong" 如果该值不被接受。
这是方法:
Public class Sykkel extends Kjøretøy
{
private int height;
public Sykkel(String colour)
{
// initialise instance variables
super(1, colour);
this.height = height;
}
public void setHeight (int height) {
if(height > 35 && height < 70){
System.out.println("Sykkelen er " + height + " cm høy.");
} else {
System.out.println("Wrong");
}
}
public int getHeight() {
return height;
}
无论我们设置什么高度它都会打印出来"Wrong"。有人看到代码中的错误了吗?
我们已经尝试了 this.height 和高度,但结果仍然相同。
提前致谢。
setter方法中没有赋值,只是追加
this.height = height;
public void setHeight (int height) {
if(height > 35 && height < 70){
System.out.println("Sykkelen er " + height + " cm høy.");
} else {
System.out.println("Wrong");
}
this.height = height;
}
我的观察。
你的构造函数应该是:
public Sykkel(String colour, int height)
{
// initialise instance variables
super(1, colour);
this.height = height;
}
在您的setHeight
方法中,您需要将高度分配给实例变量。
public void setHeight (int height) {
if(height > 35 && height < 70){
System.out.println("Sykkelen er " + height + " cm høy.");
} else {
System.out.println("Wrong");
}
// add the below line:
this.height = height;
}
另一种方法似乎还可以。
当我调用 setHeight(40);
时,我收到
Sykkelen er 40 cm høy.
希望对您有所帮助!