我正在尝试编写一种方法来设置机架的长度。
我不确定是否必须将长度变量作为参数放在方法
中public class Rack {
int racklength;
public Rack(int racklength){
racklength=racklength;
}
public int setRackLength(){
return racklength;
}
}
答案 0 :(得分:1)
是的,你这样做。设置内容时,需要传入要设置内部值的外部值。否则,你怎么设置它?所以你的代码应该是这样的:
public Rack(int racklength) {
this.racklength = racklength;
}
public void setRackLength(int racklength) {
this.racklength = racklength;
}
当参数与成员变量同名时,您需要使用this
限定符来告诉编译器哪个是成员变量,哪个是参数。或者,您可以将参数命名为else:
public void setRackLength(int length) {
racklength = length;
}
答案 1 :(得分:1)
当参数和类变量共享同一个名称时,您可以使用“this”。引用类变量。另外,将setRackLength的名称更改为getRackLength
public Rack(int racklength){
this.racklength = racklength;
}
public int getRackLength() { return rackLength; }
public void setRackLength(int rackLength) {
this.racklength = racklength;
}
答案 2 :(得分:0)
根据定义,setter方法应该有一个参数来将值设置为:
public void setProperty(PropertyType property) {
this.property = property;
// here this.property means the property that belongs to the instance, ie, 'this'
}
拥有一个没有参数的“setter”并没有任何意义。