Я изучаю, чтобы выполнить мой тест Java OCA, используя книгу «Java SE7 Programming Essentials» Майкла Эрнеста. Это мой код для одного из ответов на вопрос ниже:Пользовательский toString() в java
public class Point3D {
int x, y, z;
public void setX(int x) {
this.x = x;
}
public int getX() {
return this.x;
}
public void setY(int y) {
this.y = y;
}
public int getY() {
return this.y;
}
public void setZ(int z) {
this.z = z;
}
public int getZ() {
return this.z;
}
public String toString(Point3D p) {
String result = p.getX() + "," + p.getY() + "," + p.getZ();
return result;
}
public static void main(String args[]) {
Point3D point = new Point3D();
point.setX(5);
point.setY(12);
point.setZ(13);
System.out.println(point.toString(point));
}
}
Мой код работает, но в последней строке, я думаю, что я сделал свой код странным образом, не должно ли быть способ сделать только point.toString()
, а не point.toString(point)
вернуть строковое представление точки? Может ли кто-нибудь объяснить мне, как это исправить?
Я уверен, что это простой ответ, просто попытка понять это, потому что я подозреваю, что это указывает на дыру в моем знании java.
Вы можете использовать это ключевое слово, чтобы получить доступ к свойствам объекта в методе toString() и тем самым сделать метод беспроблемным. – guruprasath
Ничего себе !! Я думаю, что это было 10 ответов за 4 минуты. Всем спасибо!! – localhost