using System;
public class A
{
public int x;
public void m(){
Console.WriteLine("A.m()");
}
public virtual void w()//表示抽象方法,子类可以重写,也可以用abstract,但是用这个的时候类A不能生成实例,必须继承实现A
{
Console.WriteLine("W() in class A");
}
}
public class B:A
{
public new int x;
public new void m()//隐藏父类的方法
{
Console.WriteLine("hide B.m()");
}
public static void Main()
{
A a=new A();
a.m();
a.w();
B b=new B();
b.m();
b.w();
Console.WriteLine("Main");
}
public override void w()
{
int [,] xx=new int [2,2]{{1,2},{3,4}};
foreach(int x in xx)
Console.Write(" {0}",x);
int [][] xxx=new int [2][]{new int []{1,2},new int []{3,4}};
foreach(int[] x in xxx)
Console.Write(" {0}",x);
Console.WriteLine("W() overrided in class B");
}
}