实例构造函数和静态构造函数,静态构造函数和非静态构造函数

  实例构造函数和静态构造函数,静态构造函数和非静态构造函数

  静态构造函数用于初始化任何静态数据,或用于执行仅需执行一次的特定操作。

  在创建第一个实例或引用任何静态成员之前,将自动调用静态构造函数

  班级计划

  {

  静态void Main(string[] args)

  {

  static _ construct sc=new static _ construct();//这里它执行了普通构造方法和静态构造方法

  static _ construct sc2=new static _ construct();//这里静态构造方法就不会被执行了,它只在第一个类实例时被执行

  控制台WriteLine(static_construct .a);

  控制台read key();

  }

  }

  类静态构造

  {

  静态int a=0;

  public static_construct()

  {

  a=1;

  }

  静态静态构造()

  {

  a=3;

  }

  public static int A { get { return a} }

  公共静态字符串信息{获取设置;}

  }

  以下是一个树型部门的例子:

  公共类部门服务:IDepartmentsService

  {

  静态数据iDepentmentsRepository=新数据10 . OA。dependments存储库();

  静态列表实体10 . OA。部门实体列表=空;

  ///摘要

  ///静态构造方法,在使用任何静态成员之前会被提前执行

  ////摘要

  静态部门服务()

  {

  重载();

  }

  内部静态空重载()

  {

  entitiesList=(来自个人计算机中的iDepentmentsRepository .GetDepentments()

  通过电脑订购DeptName . com升序

  选择个人电脑).to list();

  }

  #地区树型部门列表

  ///摘要

  ///虚拟产品类别

  ////摘要

  ///返回虚拟产品类别列表/退货

  公共静态实体。办公自动化部门

  {

  实体10 . OA。部门根=新实体10 . OA。部门();

  尝试

  {

  root=entitiesList .单身(

  项目=项目DeptID。等于(实体10 . OA。部门。rootid));//获取跟节点

  获取subs(根);

  }

  catch(InvalidOperationException ex)

  {

  前任ToString();

  }

  返回根目录;

  }

  ///摘要

  ///根据父对象,找到子孙树

  ////摘要

  ///param name=father 父对象/param

  静态公共void GetSubs(实体10 . OA。部门父亲)

  {

  父亲SubList=entitiesList .其中(项目=

  项目ParentID。等于(父亲DeptID)的。to list();

  父亲。子列表。ForEach(项目=

  {

  项目。父亲=父亲;

  获取subs(项目);

  });

  }

  #结束区域

  }

实例构造函数和静态构造函数,静态构造函数和非静态构造函数