BLOG zzy.my

合抱之木, 生于毫末; 九层之台, 起于累土; 千里之行, 始于足下。

C# 重写(override) 和 覆盖(new)

virtual 用于修饰方法、属性、索引器或事件声明,并使它们可以在派生类中被重写。

例如,此方法可被任何继承它的类重写。虚拟成员的实现可由派生类中的 重写成员更改。

有关使用 virtual 的更多信息,参考微软 使用 Override 和 New 关键字进行版本控制

用关键字 virtual 修饰的方法,叫虚方法。在子类中用override 声明同名的方法,这叫“重写”。相应的没有用virtual修饰的方法,可以叫实方法

 

默认情况下,C# 方法为非虚方法。 如果某个方法被声明为虚方法,则继承该方法的任何类都可以实现它自己的版本。 若要使方法成为虚方法,必须在基类的方法声明中使用 virtual 修饰符。 然后,派生类可以使用 override 关键字重写基虚方法,或使用 new 关键字隐藏基类中的虚方法。 如果 override 关键字和 new 关键字均未指定,编译器将发出警告,并且派生类中的方法将隐藏基类中的方法。

 

[更多...]

Ling List where() 笔记

1. List<string> strL = new List<string>();

var tt = strL.Where(x => x == "OK").ToList().Count;  //List中包含“OK”的总数.

 

2. List<User> UsersList = new List<User>();

    UsersList.Add(new User() { Name = "zzy", ID = 10101 });

    UsersList.Add(new User() { Name = "carl", ID = 10102 });

    UsersList.Add(new User() { Name = "Tim", ID = 10103 });

 

    List<string> nameList = (from user in UsersList

                            where user.Name == "zzy" && user.ID == 10101

[更多...]