C#学习日志 day 5 plus------ interface 数组及stringBuilder相关
interface
接口interface可以理解为两个程序达成的协议。
实际就是一个留给后续开发的框架。若想继承这个interface,就必须实现interface规定的
函数及结构等。一般会以大写I开头。
示例:
这里的IStore和Ispic都是接口。继承的hello类必须实现read
write,status属性和Ispic中的nihao这几个函数,如果没有,则程序不能执行
实现之后程序才能正常执行。
这里再补一个关键字as
as关键字,进行类型转换。用于执行可兼容类型之间的转换。
当转换失败时,as 运算符将产生空,而不引发异常。
IStorable is = doc as IStorable;若doc中没有istorable则返回null
接下来是c#中数组相关知识。
首先是数组的声明
int[] a;
a = new int[5];这会生成长度为五的int数组。
Button[] a = new Button[3];
这会生成3个button类的指针
而二维数组声明和c++有所不同
int[,] a = new int[2,3];
二维数组声明
int[,,] a = new int[2,3,4];
三维数组声明
这里有一个关键字
params
keyword params自动存为数组
void D(params int[] intv){
。。。
}
调用时
D(5,6,7,8)或者
int[] a= new a[10];
D(a);都可以
还有
arratbound关键字
可以不从0开始
int[] lengthsarray = new int[2]{3,5};
int[] boundsarray = new int[2]{2,3};
Array m = Array.CreatInstance(
typeof(string),lengtharray,boundarray);
m就是三行五列,从2行3列开始。
在string中有一个有趣的东西叫stringBuilder
这里我发现了http://www.cnblogs.com/tonysuen/archive/2010/03/04/1678447.html
这个人写的常详细。所以粘在这里备用。