toString()方法不能打印正确的对象值

ann*_*769 1 java

我正在Point读一本书,我有一个定义一个点的类,我试图显示这些值.我一直在寻找一段时间,无论我做什么,总是显示[0,0]这是我的代码.

  class Main {

    public static void main(String []args) {
        Point point = new Point(10, 20);
        System.out.println(point.toString());
    }      
  }

  class Point {

    private int x, y;

    public Point(int x, int y) {
      x = x;
      y = y;
    }

    public String toString() {
      return "[" + x + ", " + y + "]";
    }
Run Code Online (Sandbox Code Playgroud)

dog*_*ant 6

你永远初始化类成员xy实际.所以它们自动初始化为0,因此[0,0]输出.

x = x 表示参数x =参数x,它不执行任何操作.

this.x = x;改用,以便设置Point类成员x.