動(dòng)態(tài)多態(tài)性
C# 允許您使用關(guān)鍵字abstract創(chuàng)建抽象類昌简,用于提供接口的部分類的實(shí)現(xiàn)部默。當(dāng)一個(gè)派生類繼承自該抽象類時(shí),實(shí)現(xiàn)即完成称近。抽象類包含抽象方法第队,抽象方法可被派生類實(shí)現(xiàn)。派生類具有更專業(yè)的功能刨秆。
請(qǐng)注意凳谦,下面是有關(guān)抽象類的一些規(guī)則:
不能創(chuàng)建一個(gè)抽象類的實(shí)例。
不能在一個(gè)抽象類外部聲明一個(gè)抽象方法衡未。
通過(guò)在類定義前面放置關(guān)鍵字sealed尸执,可以將類聲明為密封類。當(dāng)一個(gè)類被聲明為sealed時(shí)缓醋,它不能被繼承剔交。抽象類不能被聲明為 sealed。
當(dāng)有一個(gè)定義在類中的函數(shù)需要在繼承類中實(shí)現(xiàn)時(shí)改衩,可以使用虛方法岖常。虛方法是使用關(guān)鍵字virtual聲明的。虛方法可以在不同的繼承類中有不同的實(shí)現(xiàn)葫督。對(duì)虛方法的調(diào)用是在運(yùn)行時(shí)發(fā)生的竭鞍。
動(dòng)態(tài)多態(tài)性是通過(guò)抽象類和虛方法實(shí)現(xiàn)的。