知识大全 C#构造函数的 继承 问题

Posted 函数

篇首语:不飞则已,一飞冲天;不鸣则已,一鸣惊人。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 C#构造函数的 继承 问题相关的知识,希望对你有一定的参考价值。

C#构造函数的 继承 问题  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  首先说明下之所以用双引号是因为构造函数是没有继承的派生类默认会调用基类的无参数构造函数

  比如:

  public class A

  public A()

  Console WriteLine( A );

  

  public A(string name)

  Console WriteLine( A Name: name);

  

  

  public class B : A

  public B()

  Console WriteLine( B );

  

  public B(string name)

  Console WriteLine( B Name: name);

  

  

  class Program

  

  static void Main(string[] args)

  

  B b = new B();

  B b = new B( 张三 );

  Console ReadKey();

  

  

  输出的结果为

>

  说明不管调用派生类的哪个构造函数 默认都先调用基类的无参数构造函数

  之所以标题中用 继承 是因为构造函数之间的调用也是用 : 下面就在派生类里面调用一下基类的构造函数

  class Program

  static void Main(string[] args)

  

  B b = new B();

  Console ReadKey();

  

  

  public class B : A

  public B():base( B >A )

  Console WriteLine( B );

  

  public B(string name)

  Console WriteLine( B Name: name);

  

  

  输出结构为

>

  由结果可以看出 当给B的构造函数手动指派要调用的基类带参数的构造函数后 将不再执行基类的无参数构造函数

  下面写下在同一个类中构造函数的调用

  class Program

  static void Main(string[] args)

  

  B b = new B();

  Console ReadKey();

  

  

  public class B : A

  public B():this( 无惨 >带参 )

  Console WriteLine( B );

  

  public B(string name):this(true)

  Console WriteLine( B Name: name);

  

  public B(bool b)

  Console WriteLine( B bool: b);

  

  输出结果

>

  为了看一下调用的先后关系就又加了一个bool参数的构造函数 由结果可以看出如果构造函数调用了另一个构造函数 例如

  public B():this( 无惨 >带参 )

cha138/Article/program/net/201311/11827

相关参考

知识大全 C#默认构造函数的作用

C#默认构造函数的作用  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  构造函数主要用来初始化对象

知识大全 C#中构造函数和析构函数的用法(一)

C#中构造函数和析构函数的用法(一)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  摘要  构造

知识大全 C#中构造函数和析构函数的用法(二)

C#中构造函数和析构函数的用法(二)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  声明了一个类

知识大全 C#中构造函数和析构函数的用法(三)

C#中构造函数和析构函数的用法(三)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  Bb=new

知识大全 使用构造函数初始化语句

C#箴言:使用构造函数初始化语句  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! &nbs

知识大全 解答关于C#的JavaScript函数的问题

解答关于C#的JavaScript函数的问题  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  如何

知识大全 解决PHP4.0 和 PHP5.0类构造函数的兼容问题

解决PHP4.0和PHP5.0类构造函数的兼容问题  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!以

知识大全 c#中通过值和引用传递参数

  在C#中既可以通过值也可以通过引用传递参数通过引用传递参数允许函数成员(方法属性索引器运算符和构造函数)更改参数的值并保持该更改若要通过引用传递参数请使用ref或out关键字为简单起见本主题的示例

知识大全 构造函数和析构函数

  类构造函数  本节将讨论三种类构造函数  类构造函数的类型  注释  实例  用于创建并初始化类的实例  私有  在类之外不可访问的特殊类型实例构造函数无法用私有构造函数来实例化类  静态  在创

知识大全 构造和析构成员函数

    类有一个特殊的成员函数叫做构造成员函数它通常用于初始化类的数据成员在创建对象时会自动调用类的构造成员函数Java中的构造成员函数必须与该类具有相同的名字另外构造成员函数一般都应用public类