class SomeClass //基类 { public string field1 = "base class field"; public void Method1(string value) { Console.WriteLine($"Base class -- Method1: {value}"); } } class OtherClass : SomeClass //派生类 { public string field2 = "derived class field"; public void Method2(string value) { Console.WriteLine($"Derived class -- Method2: {value}"); } } internal class Program { static void Main(string[] args) { OtherClass oc = new OtherClass(); oc.Method1(oc.field1); oc.Method1(oc.field2); oc.Method2(oc.field1); oc.Method2(oc.field2); } }运行结果如下所示:
class SomeClass //基类 { public string field1 = "base class field"; public void Method1(string value) { Console.WriteLine($"Base class -- Method1: {value}"); } } class OtherClass : SomeClass //派生类 { //使用new修饰符屏蔽基类成员 new public string field1 = "derived class field"; new public void Method1(string value) { Console.WriteLine($"Derived class -- Method2: {value}"); } } internal class Program { static void Main(string[] args) { OtherClass oc = new OtherClass(); oc.Method1(oc.field1); } }运行结果如下所示:
class SomeClass //基类 { public string field1 = "base class field"; } class OtherClass : SomeClass //派生类 { new public string field1 = "derived class field"; public void PrintField1() { Console.WriteLine(field1); //访问派生类 Console.WriteLine(base.field1); //访问基类 } } internal class Program { static void Main(string[] args) { OtherClass oc = new OtherClass(); oc.PrintField1(); } }
运行结果如下所示: