我正在学习Java。使用new初始化一个变量,之后是赋值并仅初始化赋值,是否有区别?
我有一个自定义的类,它有一个属性:
public class Person{
private String name;
}
我有另一个类,在那里我做:
public class foo{
private Person guy;
public void setGuy(Person guy){
this.guy = guy;
}
public Person getGuy(){
return guy;
}
void someMethod(){
Person anotherGuy = new Person();
anotherGuy = getGuy();
}
}
我很困惑,当我使用getGuy()
方法。 我认为,当我这样做:
Person anotherGuy = new Person();
anotherGuy = getGuy();
我创建一个新的对象,它具有相同的值的家伙。但看起来anotherGuy实际上是一个指向家伙的指针。 所以
Person anotherGuy = getGuy();
和上面的2行,做同样的事情?我很困惑。另外,如何在内存中创建一个全新的对象?
人anotherGuy =新的Person();应该是“Person anotherGuy = new Person();” - 这不是你的问题的答案,而是一个建议:) – doNotCheckMyBlog
thanks..corrected! – rgamber
并且返回值意味着方法声明中的对象,所以public guy getGuy(),应该是public getGuy():)对不起,不是智慧,但它是好的,如果你开始练习代码约定:) – doNotCheckMyBlog