summaryrefslogtreecommitdiffstats
path: root/tests/java5/covariance/CovBaseProgram01.java
diff options
context:
space:
mode:
authoraclement <aclement>2004-12-01 18:00:32 +0000
committeraclement <aclement>2004-12-01 18:00:32 +0000
commitd2fb8b7a3122f1e8816cf888b02643d5b31f9c3b (patch)
treeddeac81962eeb042e82ff449bb4495e302683b73 /tests/java5/covariance/CovBaseProgram01.java
parent52594375fcd495b3c601642555136b98ee853145 (diff)
downloadaspectj-d2fb8b7a3122f1e8816cf888b02643d5b31f9c3b.tar.gz
aspectj-d2fb8b7a3122f1e8816cf888b02643d5b31f9c3b.zip
72766: This is covariance support. only missing bit is for dynamic join point matching (marked XXXAJ5 in the code) - thats not a 1.5.0M1 item I dont think...
Diffstat (limited to 'tests/java5/covariance/CovBaseProgram01.java')
-rw-r--r--tests/java5/covariance/CovBaseProgram01.java32
1 files changed, 32 insertions, 0 deletions
diff --git a/tests/java5/covariance/CovBaseProgram01.java b/tests/java5/covariance/CovBaseProgram01.java
new file mode 100644
index 000000000..169a6be10
--- /dev/null
+++ b/tests/java5/covariance/CovBaseProgram01.java
@@ -0,0 +1,32 @@
+class Car {}
+
+class FastCar extends Car {}
+
+class Super {
+ Car getCar() {
+ return new Car();
+ }
+}
+
+class Sub extends Super {
+ FastCar getCar() {
+ return new FastCar();
+ }
+}
+
+public class CovBaseProgram01 {
+ public static void main(String[] argv) {
+ new CovBaseProgram01().run();
+ }
+
+ public void run() {
+ Super instance_super = new Super();
+ Sub instance_sub = new Sub();
+
+ Car c1 = instance_super.getCar();
+ Car c2 = instance_sub.getCar();
+ }
+}
+
+// FastCar is a subclass of Car.
+// Sub is a subclass of Super. \ No newline at end of file