父类的static函数中能得到子类的类型吗?
如我有以下两个类
class A
{
protected static string MyGetType()
{}
}
class B : A
{
}
我想在调用B.MyGetType()时,在MyGetType()中获取B的类型,能做到吗?
不要用protected static string MyGetType(Type objType)的方式。
------解决方案--------------------class A本身是不知道会被那些子类继承的 ,所以不可以
静态函数是在编以后就确定地址的,而虚函数是晚邦定的,所以这两方是矛盾的
------解决方案--------------------ToString是虚函数,当然可以了,你要的静态函数办不到
------解决方案--------------------不可以的,使用虚方法
------解决方案--------------------B.MyGetType()这个方法有什么意义?等于拿着钥匙问别人钥匙在哪里。
typeof(B).Name不好吗?
------解决方案--------------------考虑用模版