Moin,
warum sollte deiner Meinung nach System.out.println(figs[0].getX());
0 liefern?
In Java sind alle Variablen, die Objekte enthalten Referenzen.
Daher zeigen figs
und a
auf das gleiche Objekt bzw. Array von Objekten.
Wenn du einen Kopie haben willst, musst du das Array bzw. die einzlnen Objekte darin klonen.
Noch ein Tipp: Arrays sollte man in Java nur in Ausnahmefällen verwenden. Sinnvoller ist es mit Collections, in deinem Fall einer List, zu arbeiten.
Einen Überblick dazu findest zu z.B. in der Java Insel im Kapitel
Datenstrukturen und Algorithmen.
Gruß
Stareagle