diff options
Diffstat (limited to 'test/009-instanceof/src/Main.java')
-rw-r--r-- | test/009-instanceof/src/Main.java | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/test/009-instanceof/src/Main.java b/test/009-instanceof/src/Main.java new file mode 100644 index 0000000000..807ae69671 --- /dev/null +++ b/test/009-instanceof/src/Main.java @@ -0,0 +1,70 @@ +/* + * Copyright (C) 2007 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * more instanceof cases + */ +public class Main { + public static void main(String args[]) { + Iface1 face1; + ImplA aa = new ImplA(); + ImplBSub bb = new ImplBSub(); + boolean aaOkay, bbOkay; + + face1 = aa; + face1 = bb; + + System.out.println("iface1.mFloaty = " + face1.mFloaty + " " + face1.mWahoo); + System.out.println("aa.mFloaty = " + aa.mFloaty + " " + aa.mWahoo); + System.out.println("bb.mWhoami = " + bb.mWhoami); + + aaOkay = face1 instanceof ImplA; + System.out.print("aaOkay (false) = "); + System.out.println(aaOkay); + bbOkay = face1 instanceof ImplB; + System.out.print("bbOkay (true) = "); + System.out.println(bbOkay); + + bb = (ImplBSub) face1; + try { + aa = (ImplA) face1; + } + catch (ClassCastException cce) { + System.out.println("Caught a ClassCastException (expected)"); + } + + Iface1[] faceArray; + ImplA[] aaArray = new ImplA[5]; + ImplBSub[] bbArray = new ImplBSub[5]; + + faceArray = aaArray; + faceArray = bbArray; + + System.out.print("instanceof Serializable = "); + System.out.println((Object)aaArray instanceof java.io.Serializable); + System.out.print("instanceof Cloneable = "); + System.out.println((Object)aaArray instanceof java.lang.Cloneable); + System.out.print("instanceof Runnable = "); + System.out.println((Object)aaArray instanceof java.lang.Runnable); + + aaOkay = faceArray instanceof ImplA[]; + System.out.print("aaOkay (false) = "); + System.out.println(aaOkay); + bbOkay = faceArray instanceof ImplB[]; + System.out.print("bbOkay (true) = "); + System.out.println(bbOkay); + } +} |