First method:

```
public PointMover (Point p)
{

    this.p = p;
    homePoint = new Point (p.x, p.y);

}

```

Second method:

```
public PointMover (Point p)
{

    this.p = p;
    homePoint = p; 

}

```

At first I though that for both methods, homePoint will get the x and y value of Point p. Turns out that's not the case. I have a very long code with me. When I use the first method in the code, I get one output from the program. When I use the second method in the code instead of the first one, I get an entirely different output from the program. So what is the difference between these 2 methods? What is the role of homePoint in these methods?

Thank you.