C#编程指南——语句类型
2014-10-14 17:46
253 查看
1.选择语句
if... else..., switch... case...
2.迭代语句
do, for,foreach, while
3.跳转语句
break:用于终止最近的封闭循环或它所在的switch语句。
continue:将控制权传递给它所在的封闭迭代语句的下一次迭代。
goto 语句:将程序控制直接传递给标记语句。
goto语句一个通常做法是将控制传递给特定的switch-case 标签或switch 语句的默认标签;goto 语句还用于跳出深嵌套循环。
return:终止它出现在其中的方法的执行并将控制权返回给调用方法;还可以返回一个可选值。
yield:yield return <expression> 计算表达式并以枚举数对象的形式返回;expression 必须可以隐式转换为迭代器的yield 类型。yield break:发出迭代器结束信号
4. 异常处理语句
throw:显示引发异常;通常throw 语句与try-catch 或 try-finally 语句一块使用。当引发异常时,程序查找处理此异常的catch 语句。还可以使用throw 语句再次引发捕获的异常。较好的编码做法是,向再次引发的异常添加信息以在调试时提供更多信息。
有时候在方法中出现了异常,不一定立即把它显示出来,而是想把这个异常抛出并让调用这个方法的程序进行捕捉和处理。这时我们就可以使用throw语句了。
throw[表达式]
注意:表示式的类型必须是System.Exception或是从System.Exception继承的类的类型。throw 也可以不用带表达式,但只能用在catch中
try-catch
try-finally
try-catch-finally
5.检查和未检查语句
checked:指定已检查的上下文
unchecked:指定未检查的上下文
6.lock 语句
lock 关键字将语句块标记为临界区,方法是获得给定对象的互斥锁,执行语句,然后释放该锁。
通常,应避免锁定public类型,否则实例将超出代码的控制范围。最佳做法是定义private对象来锁定,或private static 对象变量来保护所有实例所共享的数据。
7.fixed语句
if... else..., switch... case...
2.迭代语句
do, for,foreach, while
3.跳转语句
break:用于终止最近的封闭循环或它所在的switch语句。
continue:将控制权传递给它所在的封闭迭代语句的下一次迭代。
goto 语句:将程序控制直接传递给标记语句。
goto语句一个通常做法是将控制传递给特定的switch-case 标签或switch 语句的默认标签;goto 语句还用于跳出深嵌套循环。
return:终止它出现在其中的方法的执行并将控制权返回给调用方法;还可以返回一个可选值。
yield:yield return <expression> 计算表达式并以枚举数对象的形式返回;expression 必须可以隐式转换为迭代器的yield 类型。yield break:发出迭代器结束信号
4. 异常处理语句
throw:显示引发异常;通常throw 语句与try-catch 或 try-finally 语句一块使用。当引发异常时,程序查找处理此异常的catch 语句。还可以使用throw 语句再次引发捕获的异常。较好的编码做法是,向再次引发的异常添加信息以在调试时提供更多信息。
有时候在方法中出现了异常,不一定立即把它显示出来,而是想把这个异常抛出并让调用这个方法的程序进行捕捉和处理。这时我们就可以使用throw语句了。
throw[表达式]
注意:表示式的类型必须是System.Exception或是从System.Exception继承的类的类型。throw 也可以不用带表达式,但只能用在catch中
static void Main(string[] args) { try { Method1(); } catch(Exception er) {//立即抓住Method1抛出的异常 Console.WriteLine("Main方法捕获到:"+er.Message); } Console.ReadKey(); } static void Method1() { try { Method2(); } catch(Exception er) {//立即抓住Method2抛出的异常 Console.WriteLine("Method1中捕获到"+er.Message); //重新抛出当前正在由catch块处理的异常er throw; } } static void Method2() { //Method2抛出新的异常 throw new Exception("Method2中抛出的异常"); }
try-catch
try-finally
try-catch-finally
5.检查和未检查语句
checked:指定已检查的上下文
unchecked:指定未检查的上下文
6.lock 语句
lock 关键字将语句块标记为临界区,方法是获得给定对象的互斥锁,执行语句,然后释放该锁。
通常,应避免锁定public类型,否则实例将超出代码的控制范围。最佳做法是定义private对象来锁定,或private static 对象变量来保护所有实例所共享的数据。
7.fixed语句
相关文章推荐
- 类型参数的约束(C# 编程指南)(from MSDN)
- c# 泛型 类型参数的约束(C# 编程指南)
- 类型参数的约束(C# 编程指南)
- 可以为 null 的类型(C# 编程指南)
- 匿名类型(C# 编程指南)
- 可空类型(C# 编程指南)(FROM MSDN)
- 类型参数的约束(C# 编程指南)
- 可空类型 (C# 编程指南)
- 匿名类型(C# 编程指南)
- 使用可空类型(C# 编程指南)
- 隐式类型的局部变量(C# 编程指南)(MSDN)
- 类型(C# 编程指南)
- 类型参数的约束(C# 编程指南)
- 可空类型 (C# 编程指南)
- 泛型类型参数(C# 编程指南)
- 可空类型(C# 编程指南)(MSDN)
- 在十六进制字符串与数值类型之间转换 C# 编程指南
- c# 泛型 类型参数的约束(C# 编程指南)
- 类型参数的约束(C# 编程指南)T
- 类型参数的约束(C# 编程指南)