日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

12. 抽象与密封

發(fā)布時(shí)間:2023/12/1 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 12. 抽象与密封 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

一、抽象類與抽象方法

  1、抽象類與抽象方法聲明

  抽象類:在面向?qū)ο蟮母拍钪?#xff0c;所有的類都是通過對象來描述,但并不是所有的類都用來描述對象。如果一個(gè)類中沒有足夠的信息來描繪一個(gè)具體的對象,這樣的類就是抽象類。
  聲明:他們都必須包含關(guān)鍵字 abstract ,并且抽象方法不能有方法體。抽象類中可以包含非抽象方法。
  2、抽象類特性:
  (1)抽象類不能實(shí)例化,必須通過繼承由派生類來實(shí)現(xiàn)其抽象方法。如果派生類沒有實(shí)現(xiàn)所有的抽象方法,則該派生類也必須聲明為抽象類。
  (2)抽象類的非抽象子類(即派生類)必須通過重載實(shí)現(xiàn)其繼承的所有抽象方法和抽象服務(wù)器 。

  3、抽象方法
  (1)抽象非是隱式的虛方法,只允許聲明在抽象類中,不能使用static、private或virtual修飾符;
  (2)重寫抽象方法時(shí)采用override 。

  4、抽象方法和虛方法的區(qū)別:
  虛方法有實(shí)現(xiàn)部分,并且派生類對其重寫是可選的;抽象方法沒有實(shí)現(xiàn)部分,并且強(qiáng)制非抽象派生類對其重寫。

  5、abstract修飾符
  (1)他可以和類、方法、屬性、索引器及事件一起使用;
  (2)在類聲明中使用 abstract 修飾符以表明這個(gè)類只能是其他類的基類;
  (3)他不能修飾靜態(tài)方法或靜態(tài)屬性 。

二、密封類與密封方法

  1、密封類
  (1)密封類即不能繼承的類,C#中使用關(guān)鍵字 sealed,將類和方法聲明為密封類或者密封方法;
  (2)密封類中不能包含虛方法(virtual)和抽象方法(abstract)。

  2、密封方法
  (1)用修飾符 sealed 進(jìn)行標(biāo)記的方法;
  (2)使用 sealed 修飾符可以防止派生類進(jìn)一步重寫該方法 。

三、虛方法

  (1)子類可以對父類中的虛方法進(jìn)行重寫;
  (2定義
如: public virtual void eat();  //使用virtual關(guān)鍵字定義
???  ?? public override void eat(); //使用override關(guān)鍵字進(jìn)行重寫

?

轉(zhuǎn)載于:https://www.cnblogs.com/yx-xiansheng/p/7628113.html

總結(jié)

以上是生活随笔為你收集整理的12. 抽象与密封的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。