这个是正常的
public partial class member:from
{
public member()
{
InitializeComponent();
}
private void member_Load(object sender, EventArgs e)
{
//我是要在这里知道是member 还是member2
}
}
然后我建立子类
public partial class member2 : member
{
public member2 : base()
{
}
}
问我怎么知道当前初始化的是用了父类还是子类
跟到调试F11走几遍就清楚规则了 —— 这仅仅只是规则而已。不带参的或者缺省,默认父类的不带参,慢慢试
你估计理解错了
base()
this()
没看懂你说的这个。能具体点?
你不知道可以单步看看。
你估计理解错了
@键盘上落下的泪: 你估计应该想想怎么说,才能让人不理解错。
先初始化父类再初始化子类
你估计理解错了
@键盘上落下 不就是看是当前是member调用了member_Load 还是member2呗 用this反射不就ok了
你new的是哪个类型的对象,就初始化哪个类啊。
如果是new一个子类对象,会先初始化父类中的字段和构造方法
你估计理解错了
为什么要在父类里知道实例是哪个子类呢,我觉得你的设计可能有点问题。可以通过多态来把子类相关的操作放在子类里实现。