我有一个返回自身的超类方法(对于构建器模式)。这个类有几个子类,所以我想返回一个对对象的实际(子类)类型的引用。像这样的东西:
class SuperClass {
T someMethodThatDoesSameThingForAllSubclasses() {
// blablbal
return reference_of_actual_object;
}
}
这样我就可以从子类引用中调用其他子类方法而无需强制转换。像这样:
SubClass obj=new SubClass();
obj.someMethodThatDoesSameThingForAllSubclasses().someSubclassMethod();
//currently this gives compiler error. because first method returns superclass reference and super class doesn't have someSubclassMethod
这是可能的吗?尝试做这样的事情是否有意义?