C#继承与构造函数的调用实例

本篇内容介绍了“C#继承与构造函数的调用实例”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

十多年来,创新互联不忘初心,以网站建设互联网行业服务标杆为目标,不断提升技术设计服务水平,帮助客户在互联网推广自己的产品、服务和品牌,为客户创造价值从而实现自身价值!

C#继承构造函数的调用实例演示

using System;  using System.Collections.Generic;  using System.Linq;  using System.Text;   namespace test  {  class Program  {  static void Main(string[] args)  {  //***种情况  --C#继承构造函数的调用A a = new B();//x=1,y=0  a.PrintFields();//x=1,y=-1  //因为构造B之前,先执行变量,y没有明确赋值,默认为0。  //A构造函数调用的PrintFields方法在A类里是虚函数,它的实现是在B类,  //所以执行B类的PrintFields方法,结果输出。  //虽然继续执行完B的构造函数,使y的值是-1.但结果之前已经输出   //第二种情况  --C#继承构造函数的调用B b = new B();//x=1,y=0  b.PrintFields();//x=1,y=-1  //因为构造B之前,先执行变量,y没有明确赋值,默认为0。  //执行B的构造函数,因为B继承A,所以先执行A的构造函数。//  A构造函数调用的PrintFields方法在A类里是虚函数,它的实现是在B类,  //所以执行B类的PrintFields方法,结果输出。  //虽然继续执行完B的构造函数,使y的值是-1.但结果之前已经输出 //第三种情况  A c = new A();  c.PrintFields();//什么都不输出   Console.ReadKey();  }   }   class A  //C#继承构造函数的调用{  public A()  {  PrintFields();   }  public virtual void PrintFields()  { }  }  class B : A  {  int x = 1;  int y;  public B()  {  y = -1;  }  public override void PrintFields()  {  Console.WriteLine("x={0},y={1}", x, y);  }  }   }

C#继承构造函数的调用的基本情况就向你介绍到这里,希望对你学习和掌握C#继承构造函数的调用有所帮助。

“C#继承与构造函数的调用实例”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注创新互联网站,小编将为大家输出更多高质量的实用文章!


网站名称:C#继承与构造函数的调用实例
文章起源:http://pwwzsj.com/article/pgigoi.html