最初に、 Point2D.Double p2 = new Point2D.Double(); が実行されると、右図のような状況になります。
続いて、 Point2D.Double p1 = new Point2D.Double(); とすると
p2.setLocation(1.0, 2.0);
p1.setLocation(p2); とすると、赤矢印のように転記され、黒色のような結果になります。