我有类的层次结构:
class A{}
class B: A {}
class C:B {}
是否可以在 A 类中实现方法,它会被派生类 B 和 C 等继承,并且该方法应该返回类类型的值?
A val = A.method(); (val is A)
B val = B.method(); (val is B)
C val = C.method(); (val is C)
而且我不想在调用此方法时使用泛型,即:
C val = C.method<C>();
伙计们,对不起,一个阐述,这个方法应该是静态的。
我不想在方法 istelf 中使用泛型,因为它强制指向该方法应该返回的类型,而方法应该返回其类的类型。
class A
{
Method<T>()
{
T result;
return result;
}
}
如果我有这样的方法,我可以更改返回类型:
D result = A.Method<D>();
但我希望它返回 A 类型的值;