C#2.0 锐利体验系列课程(3):局部类型、空属类型、静态类 (Level 300)

 看了李建中的C#2.0 锐利体验系列课程(3):局部类型、空属类型、静态类 (Level 300)的笔记

 

局部类型(Partial):可以将一个类分成几个部分,在几个文件中实现,也可以在一个文件中实现。但是对于编译器来说,看到的只是一个类。

//这是一般写法,不用局部类型法

Calss App{

    Public void Foo(){……}

    ……

    Public void Bar(){……}

}

//用局部类型法

Partial class App{

    Public void Foo(){……}

}

 

Partial class App{

    Public void Bar(){……}

}

//编译器看到的还是一般写法的App

Partial只有和calssstructinterface放在一起才有效。

就像vs中将编译器自动生成的代码和需要手工编写的代码分开处理,也是用了局部类型的概念。

 

************************

空属类型。可空类型。允许一个值类型具有“空值”意义。类型后加一个?

Int? x = 1;

Int? y = null;

Int? z = x+y;

Z的值是null

 

如果int x;

int? y;

x.Equals(y)返回true;因为编译器会自动把int x转化为int? x

 

空属类型是一个泛型类型,System.Nullable<T>,T必须为值类型。

空属类型若不为空,具有和值类型一样的运算。

空属类型通过hanvalue方法判断是否为空,若不为空,可以通过value属性取值。

int?x=null;

//运用??运算符,取可空类型的值类型的默认值
      int y = x?? + 1;

非可空类型y的值为1。取可空类型x的值类型的默认值0计算。

***************************************************

静态类static class,就是把一些全局变量和全局函数包含进去。这个类不能被实例化,也不能被继承。只能包含静态的成员。类的静态的方法可以直接用"类名.方法名"来调用,不用生成类的实例再调用。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值