Visual Studio 2015的C#6.0,今天无意中看这个视频,怕忘记其中的特性,故此进行记录。
public class Point { //Getter专属自动属性 public int x { get; } //自动属性初始值 ; //构造函数给get赋初始值 public Point(int X, int Y) { x = X; y = Y; } //使用全局静态using static System.Math; public double Dist { get { return Sqrt(x * y); } } //使用全局枚举using static ConsoleApplication1.Color; public string getColor() { return yello.ToString(); } //插入字符串,定义$代表可以插入 public override string ToString() { return $"({x},{y})"; } //表达式体方法。使用箭头函数 public string ToString1() => $"({x},{y})"; //索引值初始化 public JObject ToJson() => new JObject() { ["x"] = x, ["y"] = y }; //?.运算符,如果左边为null,那么全部都是null。如果不是null,则可以执行. public static Point FromJson(JObject json) { if (json?["x"]?.Type == JTokenType.Integer) { return new Point((int)json["x"], (int)json["y"]); } return null; } //Nameof运算符。重载修改方法的时候也会修改 public Point Add(Point point) { if (point == null) throw new ArgumentNullException(nameof(point)); return null; } } public enum Color { yello, black }