codegen: handle exceptions of a method
[mate.git] / tests / InstanceOf2.java
1 package tests;
2
3 public class InstanceOf2 {
4         public static void main(String []args) {
5                 System.out.printf("x = new InstanceOf2_local;\n");
6                 Instance1 x = new InstanceOf2_local();
7                 checkInstance(null instanceof Instance1, "null", "Instance1");
8                 checkInstance(x instanceof Instance1, "x", "Instance1");
9                 checkInstance(x instanceof Instance2, "x", "Instance2");
10                 checkInstance(x instanceof InstanceOf2_local, "x", "InstanceOf2_local");
11                 checkInstance(x instanceof Object, "x", "Object");
12                 checkInstance(x instanceof InstanceOf2_local2, "x", "InstanceOf2_local2");
13
14                 System.out.printf("\n\n");
15                 System.out.printf("y = new InstanceOf2_local2;\n");
16                 Object y = new InstanceOf2_local2();
17                 checkInstance(null instanceof Instance1, "null", "Instance1");
18                 checkInstance(y instanceof Instance1, "y", "Instance1");
19                 checkInstance(y instanceof Instance2, "y", "Instance2");
20                 checkInstance(y instanceof InstanceOf2_local, "y", "InstanceOf2_local");
21                 checkInstance(y instanceof Object, "y", "Object");
22                 checkInstance(y instanceof InstanceOf2_local2, "y", "InstanceOf2_local2");
23         }
24
25         public static void checkInstance(boolean cond, String obj, String classname) {
26                 System.out.printf(obj);
27                 if (cond) {
28                         System.out.printf(" is instance of ");
29                         System.out.printf(classname);
30                         System.out.printf(" :-)\n");
31                 } else {
32                         System.out.printf(" is *not* instance of ");
33                         System.out.printf(classname);
34                         System.out.printf(" :-(\n");
35                 }
36         }
37 }
38
39
40 class InstanceOf2_local extends Instance1 {
41 }
42
43 class InstanceOf2_local2 extends InstanceOf2_local {
44 }