一直用C#开发程序,.NET的功能越来越多,变化也挺大的,从最初的封闭,到现在的开源,功能不断的增加,一直在进步。作为C#的强烈支持者,C#的变化,我不能不关注,这篇文章主要介绍,C#6.0和C#7.0增加的功能。C#的发展史和.NET以前的版本,请看C#和.NET版本,这边文章中有介绍。
C# 6.0版
1. 静态导入
using static 增强功能可用于导入单个类的静态方法。
例如:using static System.String;可以直接用String类中的静态方法,而不用string.XXXX
2. 异常筛选器
“异常筛选器”是确定何时执行catch中的程序, 如果用于异常筛选器的表达式计算结果为 true,则 catch 子句将对异常执行正常处理,如果表达式计算结果为 false,则将跳过 catch 子句。
例如:e.Message.Contains("test")为true执行,否则不执行
try { throw new Exception("test"); } catch (Exception e) when (e.Message.Contains("test")) { Console.WriteLine("ce"); }
3. 只读自动属性、自动属性初始化表达式、Expression bodied 成员、字符串内插
可以让属性初始化,仅仅初始化一次,这适用于方法和只读属性
例如:
public class Class6 { public string LastName { get; set; } public strin