我做了2个类,其中一个是:
public class tuna {
public String girlname;
public tuna(String name) {
name = girlname;
}
public void type() {
System.out.println("your girl name is :" + girlname);
}
}
另一个是:
class apples {
public static void main(String[] args) {
tuna dog = new tuna("nicole");
dog.type();
}
}
似乎一切正常,但是当我运行它时,它会打印:
你的女孩名字是空
的
为什么?如何解决这个问题?
在类金枪鱼的构造函数中,它必须是..女名=名;
(你打错字了,我猜...
试试这个:
public class Tuna {
private final String girlname;
public Tuna(final String girlname) {
this.girlname=girlname;
}
public String getGirlname() {
return girlname;
}
...
}
分配
的顺序,如果是什么使应用程序行为奇怪......
你有这个:
public tuna(String name) {
name = girlname;
}
这意味着您正在参数中写下女名的名字;
你的意思是肯定的:
public tuna(String name) {
this.girlname = name;
}
public class tuna {
public String girlname;
public tuna(String name) {
this.girlname = name;
}
public void type() {
System.out.println("your girl name is :" + girlname);
}
我会做这个简单的改变让它工作。请记住,name 的值现在存储在 girlname 中,这就是您想要的。:)
您没有正确分配值。
在java中,右边的东西被复制到左边的东西,这是
称为"="运算符的关联性。所以不是写name=girlname;
把它写成girlname=name;