package proxy.three;
public class TestA1 {
static TestIntfaceA1 instanceA;
static TestIntfaceB1 instanceB;
public static void createProxy() {
Object o = TestInvocationHandlerA1.newInstance(TestIntfaceA1.class, TestIntfaceB1.class);
System.out.println("o =" + o);
System.out.println(o.toString());
System.out.println("first interface is " + o.getClass().getInterfaces()[0]);
System.out.println("second interface is " + o.getClass().getInterfaces()[1]);
instanceA = (TestIntfaceA1) o;
instanceB = (TestIntfaceB1) o;
System.out.println("instanceA = " + instanceA);
System.out.println("instanceB = " + instanceB);
}
public static void runMA() {
System.out.println("instance type is " + instanceA.getClass());
instanceA.ma();
}
public static void runNA() {
// filled in later
}
public static void runMB() {
System.out.println("instance type is " + instanceB.getClass());
instanceB.mb();
}
public static void runNB() {
// filled in later
}
}