初始化一个继承的类

Gab*_*tos 0 c# initialization class

我有一个类(我们称之为Class1),它继承了另一个类(Class2).我要做的是在Class1中继承时在Class2中运行costructor方法.

我想它必须看起来像这样:

// Class1
public class Class1 : Class2
{
    public Class1()
    {

    }
}
// Class2
public class Class2
{
    public Class2()
    {
        //this is the function I want to run
    }
}
Run Code Online (Sandbox Code Playgroud)

但我无法让它像这样工作.
有没有办法做到这一点,而不必实际从Class1调用Class2()构造函数方法?

pho*_*oog 6

你正确地声明你的构造函数.删除void关键字:

// Class1 
public class Class1 : Class2 
{ 
    public Class1() 
    { 

    } 
} 
// Class2 
public class Class2 
{ 
    public Class2() 
    { 
        //this is the function I want to run 
    } 
} 
Run Code Online (Sandbox Code Playgroud)

基类的默认构造函数将自动运行.如果你想调用非默认构造函数,你可以这样做:

// Class1 
public class Class1 : Class2 
{ 
    public Class1() : base("argument")
    { 

    } 
} 
// Class2 
public class Class2 
{ 
    public Class2() 
    { 
    } 
    public Class2(string theParameter)
    {
        //code for initializing the object with the string parameter 
    }
} 
Run Code Online (Sandbox Code Playgroud)