none
一个类继承于另一个类,子类是不是也继承了父类的构造函数? RRS feed

答案

  • 你好

    如果我的概念沒有錯的話... 你說的是對的

    Please correct me if my concept is wrong


    Chi
    • 已标记为答案 王基任 2010年9月26日 16:55
    2010年9月26日 15:39
    版主
  • 准确的讲,任何子类都继承父类的公共、无参构造函数;父类的其他构造函数,不会被继承。除非在子类中声明相同签名的构造函数并且显式调用 base。如:

    public class Foo { public Foo() { } public Foo(string value) { } }
    public class Bar : Foo { public Bar(string value) : base(value) { } }

    这时,Bar 有两个构造函数决策。

    注意,任何类型,都继承 Object,因此,任何类型都具备公共的、无参构造函数。除非您更改此构造函数的访问级别。


    Mark Zhou
    • 已建议为答案 mazhou 2010年9月27日 8:55
    • 已标记为答案 王基任 2010年9月29日 6:33
    2010年9月27日 8:54

全部回复

  • 你好

    如果我的概念沒有錯的話... 你說的是對的

    Please correct me if my concept is wrong


    Chi
    • 已标记为答案 王基任 2010年9月26日 16:55
    2010年9月26日 15:39
    版主
  • 准确的讲,任何子类都继承父类的公共、无参构造函数;父类的其他构造函数,不会被继承。除非在子类中声明相同签名的构造函数并且显式调用 base。如:

    public class Foo { public Foo() { } public Foo(string value) { } }
    public class Bar : Foo { public Bar(string value) : base(value) { } }

    这时,Bar 有两个构造函数决策。

    注意,任何类型,都继承 Object,因此,任何类型都具备公共的、无参构造函数。除非您更改此构造函数的访问级别。


    Mark Zhou
    • 已建议为答案 mazhou 2010年9月27日 8:55
    • 已标记为答案 王基任 2010年9月29日 6:33
    2010年9月27日 8:54