如果我没有将方法标记为virtual
,它是否可用于派生类?做超类和子类对象共享常用方法吗?
如果使用对象a
,我更改基类的方法。然后对象b
访问基类(可用于派生类)的相同方法m1()
。
它会按对象a
打印那些更改的值吗?
他们会有共同的方法吗?
class A
{
public int m(int i)
{
return i * i;
}
}
class B : A
{
}
class C
{
static void Main()
{
A a = new A();
int x = a.m(2); // returns 4
B b = new B();
int y = b.m(4); // 16
}
}
你在调试代码时看到了什么? – 2010-10-02 14:11:53