摘要:
Cp10属性 属性的本质就是方法,只是看起来像字段罢了; 无参属性 就是一般属性; 字段一般要private,然后通过设置访问方法 访问器来访问;属性是方法语法变种;getset不一定要访问支持字段;编译的时候会自动生成对应的方法和映射关系; 自动属性 可以为以后创建复杂一点的属性做好占位,随时更换 阅读全文
摘要:
Cp9参数 可选参数和命名参数 参数设置了默认值(设置要从右到左,有默认值的参数必须放在没有默认值的参数的后面,默认值必须是常量),就可以使用可选参数和命名参数了。向方法传递实参的时候,编译器按照从左到右的顺序对实参进行求值。如果有ref或者out就不能设置默认值了。 本质上是编译器在编译的时候应用 阅读全文
摘要:
Cp8方法 构造器 作用就是初始化所有成员字段;.ctor;派生类和基类都有自己的构造函数。默认有一个无参数的构造函数,值字段初始化为0,引用字段初始化为null;可以有多个构造器; 值类型的初始化其实是通过内联的方式来简化的语法; 结构的构造器 一般是new了再使用,new的含义是调用默认的构造器 阅读全文
摘要:
Cp6类型和成员基础 成员 常量;字段(静态字段和实例字段);实例构造器;类型构造器(用于静态字段的构造);方法(静态方法和实例方法);操作符重载(本质是一个方法);转换操作符;属性(本质还是方法);事件(委托);类型(嵌套类); 类型的可见性 public,private,protected,in 阅读全文
摘要:
Cp5基元类型引用类型值类型 基元类型 编译器直接支持的类型,基元类型直接映射到FCL中存在的类型。 作者希望使用FCL类型名称而避免使用关键字。他的理由是为了更加的清晰的知道自己写的类型是哪种。但是实际当中关键字更常用,FCL类型的写法太繁琐了。特别是你不用过多考虑和其他语言交互的时候,只使用C 阅读全文