if(object instanceof Class1){
((Class1)object).excute1();
}else if(object instanceof Class2){
((Class2)object).excute2();
}
或者采用反射(但是不如定义个接口,将实例转换为接口调用好)
String cn = "test.dynamic.ClassB";// -----------要动态加载的类的全路径
Class> clazz = myLoader.loadClass(cn);// -----根据类名称来加载
Object object = clazz.newInstance();// ---------创建一个ClassB类的对象
Field f = clazz.getDeclaredField("test");// ----注意这里有Declared
Method m = clazz.getMethod("test");// ----------注意这里没有Declared
f.setAccessible(true);// -----------------------保证私有字段可访问
Object fv = f.get(object);// -------------------获取字段值
Object mv = m.invoke(object);// ----------------执行某方法