``` > c#学习(二) ```

来源:互联网 发布:网络连接不可用 编辑:程序博客网 时间:2024/06/07 23:39

这里写图片描述
常量
是一个包含不能修改的值的变量
用const修饰符声明的字段为常量,常量只能在声明中初始化,以后不能再修改
只读字段
允许把一个字段设置为常量,它只能在字段声明中或构造函数中重新赋值,不能在其他地方赋值。只读字段是实例字段,每个实例都可以有不同的值,如果想变成静态字段,需要显式声明。
用修饰符static声明的字段为静态字段。不管包含该静态字段的类生成多少个对象或根本无对象,该字段都只有一个实例,静态字段不能被撤销。必须采用如下方法引用静态字段:类名.静态字段名。
如果类中定义的字段不使用修饰符static,该字段为实例字段,每创建该类的一个对象,在对象内创建一个该字段实例,创建它的对象被撤销,该字段对象也被撤销,实例字段采用如下方法引用:实例名.实例字段名。

匿名类型
用var关键字定义隐式类型化的变量,用var和new关键字定义隐式类型类,该类继承于object类且无类名。
如果两个匿名类的成员相同,则两个匿名类型相同
结构
结构是值类型,由struct定义,存在构造函数与属性,定义方法与类相同。
结构不能声明默认构造函数(没有参数的构造函数)或析构函数。
与类不同,结构的实例化可以不使用 new 运算符。
结构不支持继承。

struct Dime{    public double length;    public double width;}Dime point;point.length = 2;point.width = 2;

结构可以这样初始化,如果Dime是个类,便会有编译错误,因为point包含一个未初始化的引用。
当把结构当作参数传递时,应作为ref参数传递,此时只传递了结构的在内存中的地址,但是调用的方法会改变结构的值。

结构的继承链:

结构->System.ValueType->System.Object

部分类
可以将 struct class interface 放在多个文件中,使用时须在struct class interface前面加上partial。
各个部分必须有相同的可访问性,如Public private protected internal abstract sealed new 一般约束等等
在把部分类编译到类型时,属性,xml注释,接口,反省类型的参数属性和成员会合并。

静态类
如果该类只包含静态的方法或属性,则该类就是静态的。

关于静态方法与实例方法
(待补充)

0 0
原创粉丝点击