首页 > 代码库 > C# 类与结构

C# 类与结构

1.类的访问修饰符:public(所有可访问) internal(在一个程序集中可访问) protected(本类及继承类可访问) private()(本类可访问)

2.类的构造器:(1)非静态构造器(2)静态构造器

  (1)非静态构造器:有访问修饰符,如果是private ,则表示该类不允许被实例化(因为该构造器只允许类内部访问)

      (2)静态构造器:  无访问修饰符,默认是public也只能是public,静态构造器只能有一个

3.常量(const)与只读字段(readonly):

  (1)常量是硬编码,编译时赋值,eg:const int pi=3.14(静态的);readonly是运行时赋值(动态的):eg:readonly int ip; ip=(int)request.form["ip"];

  (2)常量底层是用static修饰的,故无需实例化即可访问。而readonly底层是用initonly修饰的,故需对类进行实例化后才可访问。如想不实例化就可访问,则用static readonly 修饰,     且  需在静态构造器中初始化

4.封闭的类(sealed):不能被继承

5.ref与out

   (1)ref:必须先初始化,out:无需先初始化,但在方法体内得初始化。

   (2)ref,out相当于引用,void a(string x)与void a(ref string x)是重载,但void a(ref string x)与void a(out string x) 不是重载

结构

1.值类型,不必进行实例化

2.不能创建无参数的结构

3.结构不能继承,因为它默认是sealed的

4.结构没有默认的构造器

5.new为会每一个成员字段赋一个默认初值,而不new则不会这么做。