构造函数定义中":base"的含义是什么?

Dot*_*ner 7 .net c# constructor

以下类(MyClass)的costructor 中" :base " 的含义是什么?请解释下面针对类MyClass给出的构造函数定义背后的概念.

public class MyClass: WorkerThread
{
        public MyClass(object data): base(data) 
        { 
           // some code       

        }
}

public abstract class WorkerThread
{

        private object ThreadData;
        private Thread thisThread;

        public WorkerThread(object data)
        {
            this.ThreadData = data;
        }

        public WorkerThread()
        {
            ThreadData = null;
        }
}
Run Code Online (Sandbox Code Playgroud)

Dan*_*nas 19

基类是WorkerThread.创建MyClass时,必须使用其任何构造函数创建WorkerThread .

通过编写,base(data)您指示程序使用一个WorkerThread的构造函数data作为参数.如果你没有这样做,程序将尝试使用默认构造函数 - 一个可以在没有参数的情况下调用的构造函数.

  • 并且保证在当前构造函数执行之前执行*基类构造函数. (8认同)