diff options
author | Alexander Kriegisch <Alexander@Kriegisch.name> | 2024-01-04 10:12:59 +0700 |
---|---|---|
committer | Alexander Kriegisch <Alexander@Kriegisch.name> | 2024-01-06 10:09:11 +0100 |
commit | 61ceb8a58ea72d4c07ff0b2f669d5f84b75700ec (patch) | |
tree | 857d468f6c8cc4d83370ed9d526e79f3abdb3f2a /docs/examples/introduction/CloneablePoint.java | |
parent | f7962810eca3ddda75d64b85caab2449eeff480e (diff) | |
download | aspectj-61ceb8a58ea72d4c07ff0b2f669d5f84b75700ec.tar.gz aspectj-61ceb8a58ea72d4c07ff0b2f669d5f84b75700ec.zip |
Move docs examples directory two levels up
Now, the location more closely resembles where it is on the website.
Signed-off-by: Alexander Kriegisch <Alexander@Kriegisch.name>
Diffstat (limited to 'docs/examples/introduction/CloneablePoint.java')
-rw-r--r-- | docs/examples/introduction/CloneablePoint.java | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/docs/examples/introduction/CloneablePoint.java b/docs/examples/introduction/CloneablePoint.java new file mode 100644 index 000000000..c34509850 --- /dev/null +++ b/docs/examples/introduction/CloneablePoint.java @@ -0,0 +1,42 @@ +/* + +Copyright (c) Xerox Corporation 1998-2002. All rights reserved. + +Use and copying of this software and preparation of derivative works based +upon this software are permitted. Any distribution of this software or +derivative works must comply with all applicable United States export control +laws. + +This software is made available AS IS, and Xerox Corporation makes no warranty +about the software, its performance or its conformity to any specification. + +*/ +package introduction; + +public aspect CloneablePoint { + + declare parents: Point implements Cloneable; + + public Object Point.clone() throws CloneNotSupportedException { + // we choose to bring all fields up to date before cloning. + makeRectangular(); + makePolar(); + return super.clone(); + } + + public static void main(String[] args){ + Point p1 = new Point(); + Point p2 = null; + + p1.setPolar(Math.PI, 1.0); + try { + p2 = (Point)p1.clone(); + } catch (CloneNotSupportedException e) {} + System.out.println("p1 =" + p1 ); + System.out.println("p2 =" + p2 ); + + p1.rotate(Math.PI / -2); + System.out.println("p1 =" + p1 ); + System.out.println("p2 =" + p2 ); + } +} |