CLR以及所有托管语言都不支持多继承,通过接口模拟实现 14.1 类和接口的实现 接口定义:为一组方法签名指定一个名称的方式。 类实现接口,就一定要提供接口所有方法的实现。 即使抽象类,也要全部实现,但是,它可以把接口方法声明为abstract的,从而把这个接口方法留给派生类去实现,如下: public interface ITest { ... Read More
posted @ 2007-09-26 16:34
包建强
Views(1234)
Comments(0)
Diggs(0)
CLR支持一维/多维/交错数组。 两种声明方式: Array a; a = new String[0, 1]; String[] s = new String[5]; 注意,声明不要给与数组长度,因为此时还不分配内存;new时要指定长度。 将数组声明为Array和像String[]这样带中括号的,效果是一样... Read More
posted @ 2007-09-26 16:33
包建强
Views(2552)
Comments(0)
Diggs(0)
12.1 枚举类型 强类型,枚举之间进行不能隐式转换 枚举类型直接派生于System.Enum,后者派生于System.ValueType,值类型,可以使用装箱/拆箱 不能定义方法/属性/事件。 同一个枚举中,多个枚举符号有相同的数值,数值转符号时,会返回其中第一个符号。 枚举类型要与使用它的类在同一级。 默认为int,可以指定枚举成员的类型,只有int,uint,byte,sbyte,... Read More
posted @ 2007-09-26 16:32
包建强
Views(2153)
Comments(0)
Diggs(0)
自定义属性,使用声明式编程的方式,HTML也是属于这种编程方式。 17.1 使用自定义属性 只是将一些附加信息与某个目标元素关联起来。编译器在托管模块的元数据中生成额外的信息。 从System.Attribute派生,所有符合CLS的属性都是从这个基类派生。 有定位参数和命名参数两种,前者必须指定。 可以将多个属性应用于单个目标元素,用逗号分割。 17.2 定义自己的属性 属... Read More
posted @ 2007-09-26 13:37
包建强
Views(1934)
Comments(0)
Diggs(0)
前言:System.Nullable在FCL中的实现: System.Nullable where T:struct,所以Nullable是一个值类型 有两个只读属性HasValue和Value,以及GetValueOrDefault方法 18.1 C#语法:Int32? 等价于 Nullable,于是可以有: Int32? a = 5; Int32? b = n... Read More
posted @ 2007-09-26 10:36
包建强
Views(1746)
Comments(0)
Diggs(0)

浙公网安备 33010602011771号