匿名类型
顾名思义 匿名类型就是没有名字的类型。就相当一张临时表一样。
用途:在框架中运用平凡
关键字:Var(是一种语法糖技术)
Var:隐式类型推断实际类型
任意类
例如:
class Program { static void Main(string[] args) { //声明一个匿名对象,拥有 Name和Age 属性 var obj = new { Name = "Joey", Age = 25 };//这里的new { Name = "Joey", Age = 25 } 就是一个匿名类型 ,obj则是这个类型的一个对象,称为匿名对象 Console.WriteLine("匿名对象obj : Name=" + obj.Name + " , Age=" + obj.Age); } }
运算符重载
Person类
namespace chp07运算符重载 { public class Person { public string Name { get; set; } public int Age { get; set; } public static int operator +(Person p1,Person p2) { return p1.Age + p2.Age; } //重载== public static bool operator ==(Person p1,Person p2) { return p1.Age == p2.Age; } public static bool operator !=(Person p1, Person p2) { return p1.Age != p2.Age; } public static int operator -(Person p1,Person p2) { return p1.Age - p2.Age; } } }
重载相等的方法有相等和不等
Program
namespace chp07运算符重载 { class Program { static void Main(string[] args) { Person p1=new Person(){Name = "李小龙",Age =120}; Person p2=new Person(){Name = "甄子丹",Age = 20}; Console.WriteLine(p1+p2); Console.WriteLine("对象p1的年龄减去p2的年龄"); Console.WriteLine(p1-p2); if (p1==p2) { Console.WriteLine("内存地址一样啊啊啊"); } Console.ReadKey(); } } }