- 1、本文档共29页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C#基础语法及面向对象概念.doc
程序控制语句
是否每次循环都会在该循环体作用域内垃圾回收一次。
if语句
控制if的条件表达式必须生成bool型结果。
if-else-if阶梯式结构
if(条件)
语句;
else if(条件)
语句;
else if(条件)
语句;
else
语句;
switch
格式:
switch(表达式){
case 结果1;
语句;
break;
case 结果2;
语句;
break;
default;
语句;
break;
}
switch表达式必须是整数(包括char型)或string类型,浮点表达式是不允许的。
case常数必须具有与表达式相兼容的类型的常量,在同一switch中任何两个case常数的值都不能相同。
如果没有case常数与表达式匹配,则执行default语句,是否有default是可选项的。
case的序列必须要用break结束,否则会接入下一个case出错,这称为不可入规则。
但是你可以将多个case常数指向同一段代码,如:
switch(i){
case 1;
case 2;
case 3;
Console.WriteLine(i is 1,2 or 3);
break;
case 4;
Console.WriteLine(i is 4s);
break;
}
for循环
for(初始化循环变量;条件;重复变化量)
例如:
for(i=i;i10;++i) { Response.write(i); }
“条件”的结果必须为bool值,但可以不包含循环变量。
循环变量的作用域仅限for循环体
多个循环变量
可以在表达式中使用多个变量来控制循环,变量之间用逗号间隔:
for(i=0 , j=10 ; ij ; i++ , j--)
Response.Write(i and j:+i+++j);
缺省空白
在for中初始部分、条件、重复变化部分,都可以为空
如:
for(i=0 ; i10;)
在循环体内部进行i运算
for(; i10 ;)
必须事先初始化i,在循环体内部进行i运算
for(;;)
无限循环
没有循环体的循环
例如:对1至50累加:
int sum = 0 ;
for( i=1; i=50; sum+= i++);
在循环体只有一条语句时,完全可以采用这种方法。
for( ; DataReader1.read() ; Response.Write(DataReader1[name]) );
while循环
while(条件)
{循环体}
条件为真时执行
do-while循环
do
{循环体}
while(条件)
do-while循环是在未尾判断条件,这意味着循环至少会被执行一次,在某些情况下可以减少代码量。
break
利用break可以强制跳出循环,并略过本次循环的剩余代码。
Continue
略过本次循环的剩余代码,提前进入下一次循环。
goto跳转
无条件跳转到指定位置,如:
loop1: //标签,标签后跟冒号
x++;
if(x10) goto loop1; //无条件跳到loop1处
goto鼓励创造无头绪代码,然而有时却能使程序更加清晰和便捷,比如从深层嵌套中退出。
foreach循环
foreach(类型 形参变量 in 数组或集合){
}
形参变量必须与数组集合的基本类型相同或兼容
foreach也可用于多维数组,遍历其中的第一维,按照行的顺序从头到尾返回减少了一维的子数组。
继承
继承
首先建立一个通用类,定义出公用的特性。可以被其他更具体的新类继承,在每个新类中都添加特有的性质。
那么,被继承的类叫做基类,继承后产生的类叫做派生类。因此,派生类是基类的特殊版本。它继承了基类的所有变量、方法、属性和基类定义的索引。
继承声明
C#类声明中允许集成另一个类,这要通过声明派生类时指定基类来完成。如:
class 派生类名 : 基类名 {
}
尽管派生类继承自基类,但它完全是一个独立的类。而基类也完全可以按照独立类来使用。
你只能为任何一个新建的派生类指定一个基类,C#不允许多个基类共同派生出一个新。
然而派生类可以作为另一个派生类的基类。
派生类无法继承基类的private私有成员。
但我们有其它方法来访问基类的私有成员:protected访问修饰符 和 用属性来访问私有数据。
protected访问修饰符
protected保护成员在类的层次结构外被认为是私有成员。
类成员被声明为protected后实际上是私有的,但它会被继承到派生类,因此可以被派生类访问。
构造函数的继承性
基类的构造函数构造对象的基类部分,派生类的构造函数构造对象的派生类部分(后来添加的方法和变量)。构造函数的构造过程是分开的。
在类的层次中,构造函数按照派生的顺序,从基类到派生类调用。而
文档评论(0)