六月婷婷综合激情-六月婷婷综合-六月婷婷在线观看-六月婷婷在线-亚洲黄色在线网站-亚洲黄色在线观看网站

明輝手游網中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

第15章 接口[《.net框架程序設計》讀書筆記]

[摘要]第十五章 接口摘要: 接口的應用及完全限定名方式定義接口的應用。 一、 接口與繼承l C#支持單實現繼承和多接口繼承l 接口中可以定義:事件、無參屬性(屬性)、含參屬性(索引器);C#不允許接口定義任何靜態成員(CLR卻允許定義靜...
第十五章 接口

摘要:

接口的應用及完全限定名方式定義接口的應用。



一、 接口與繼承

l C#支持單實現繼承和多接口繼承

l 接口中可以定義:事件、無參屬性(屬性)、含參屬性(索引器);C#不允許接口定義任何靜態成員(CLR卻允許定義靜態成員);CLR不允許接口定義實例字段和構造器。

l 缺省為public abstract 方法,但不可用任何修飾符進行修飾(包括public)

l 將值類型轉換為接口類型(假設其實現了某個接口),則值類型被裝箱為引用類型,以調用其中的接口方法。



實現接口繼承或實現繼承的原則:

l 存在IS-A關系使用實現繼承,存在CAN-DO關系使用接口繼承

l 實現繼承可繼承父類型的實現,由于接口中沒有定義方法的實現,因此繼承后必須實現方法

l 考慮到每個人對接口實現的不同,使用實現繼承可同一部分功能的實現

l 為父類型添加方法可能不影響使用繼承自該類型實現的用戶,而為接口添加方法導致用戶必須為新方法添加實現

二、 利用接口改變已裝箱類型中的字段

實際上是將已裝箱類型轉型為接口類型,然后通過調用方法進行值改變。

因為對已裝箱類型進行拆箱到原值類型將在堆棧上聲稱新的值類型,調用這個新的值類型的方法不能改變以裝箱類型的值。



三、 實現多個有相同方法的接口

使用 接口名.方法名 的形式聲明實現了那個接口的方法。成為 完全限定接口名,這樣定義的方法被認為是私有方法,不能使用類型本身調用;當將類型轉換為接口類型時,完全限定接口名定義的方法又變成一個公有方法。(比較奇特,也很有用);使用完全限定接口名定義的方法不能使用任何訪問修飾符。



四、 顯示接口成員實現

問題的提出:通常接口接受的參數為Object,這樣的參數非強類型安全的,可能需要在我們自定義類型的接口實現中定義強類型安全的方法,同時也需要實現“接口合同”

問題解決:通過上面的完全限定接口名方式定義接口方法,可達到這樣的效果。

優點:獲得強類型支持,可在編譯期發現類型不匹配問題,而不是到運行期。同時,調用自定義的方法不必進行裝箱操作,提高了效率。

缺點:由于我們在類型中隱藏了接口實現(必須將轉型為接口才能暴露出接口定義的方法),因此可能對使用造成不便,因此應該慎


主站蜘蛛池模板: 亚洲 欧美 成人 | 亚洲成a人片在线观看播放 亚洲成a人片在线观看www | 午夜免费福利在线 | 欧美性xxxx交 | 天堂网久久| 日韩免费视频在线观看 | 亚洲精品网站在线 | 性视频久久 | 伊人小视频 | 中文字幕网资源站永久资源 | 亚洲欧美成人完整版在线 | 亚洲小视频 | 色丁香久久 | 欧美综合久久 | 日本免费中文字幕在线看 | 天天操夜夜添 | 青娱乐极品视频在线观看 | 日本国产在线视频 | 日韩高清在线高清免费 | 影音先锋国产系列精品 | 又大又硬又粗又爽免费 | 天天干网站 | 小明精品国产一区二区三区 | 欧美视频精品在线 | 在线国产一区二区 | 亚洲人成www在线播放 | 亚洲欧美日韩一级特黄在线 | 四虎永久免费最新在线 | 日韩中文字幕久久精品 | 四虎看片 | 午夜激爽毛片在线看 | 日本亚洲中午字幕乱码 | 天天干天天色天天 | 青草久久影院 | 婷婷六月久久综合丁香可观看 | 亚洲高清在线播放 | 亚洲欧美日韩成人网 | 日韩精品视频美在线精品视频 | 青青影院在线播放免费 | 中文字幕亚洲一区二区v@在线 | 亚洲区欧美中文字幕久久 |