(1) /** * 继承时重写方法的返回类型可以不一样 * 这时的返回值类型必须是与父类相同或者为子类. */ class A { public Object func(){ return null; } } class B extends A { public String func() { return null; } } (2) /** * 重写的方法的访问权限要大于或等于原方法 */ class A { protected String func(){ return null; } }…
最近在看 C++ 类继承中的字段内存布局,我就很好奇 C# 中的继承链那些 private 字段都哪里去了? 在内存中是如何布局的,毕竟在子类中是无法访问的. 一:举例说明 为了方便讲述,先上一个例子: internal class Program { static void Main(string[] args) { Chinese chinese = new Chinese(); int num = chinese.b; //b 字段无法访问,编译报错 Console.WriteLine(n…