中国开发网: 论坛: 程序员情感CBD: 贴子 633126
sealw: 在Java中是这样的情况
在没有使用泛型之前,典型的工厂Spring提供对象实例化和初始化功能,对象必须有不带参数的构造方法,可以有一些setter方法,可以有一个init方法(名字不限,可指定)。

Spring在完成对象实例化之后,通过反射来调用setter方法和init方法。

在有了泛型和annotation之后,Spring基本上还是这样做的,只是不需要强制类型转换了。

Java的泛型可以指定参数T是派生于某个类C,这样在方法中可以对T调用C的方法。对于龙之问同学的问题来说,也许可以利用这一点。如果可以确定ClientBase<Service1>和ClientBase<Service2>有共同的父类,那就可以调用父类的方法,如State()和Connect()。但是我记不清这两个类是否有共同父类了,如果有共同父类,父类是谁?

只记得有一点是肯定的,虽然A是B的父类,但List<A>和List<B>是没有父子关系的,它们是兄弟。但它们是否有共同的父类List?没实际用过这个特征,就是体会不深。

相关信息:


欢迎光临本社区,您还没有登录,不能发贴子。请在 这里登录