結構和接口

        結構

結構介紹

 1、訪問修飾符 struct 結構名{}

 2、結構不能定義默認的構造函數,但可以定義含有參數的構造函數

 3、使用結構的方法與使用類的方法相同

何時使用結構

 結構是一種輕量級的數據類型,適合用於表示佔用存儲空間小的數據類型

 1、在邏輯上表示某個值,與基本類型相似

 2、佔用內存小於16字節

 3、不必頻繁轉爲引用類型

      接口

接口介紹

 1、是一種公共方法和屬性的集合

 2、訪問修飾符 interface 接口名{}

 3、接口中定義的屬性和方法都是公公的,不是繼承和私有的。在c#中定義接口時,不允許顯式指定接口成員的可訪問性,而且接口成員默認爲公有的。

 4、接口中只能包含普通方法和屬性,而不能包含其他內容(如構造函數、變量等)

 5、接口中的方法和屬性只有簽名部分,而沒有實現部分,甚至連方法名後面的{}也不能有

使用接口

 1、當一個類實現多個接口時,中間用','隔開

 2、接口可繼承接口

 3、如果一個類繼承接口,則該類必須實現該接口的所有方法和屬性

顯示接口實現

 1、在顯式實現接口時,類中對應於接口中的方法或屬性口有接口名做前綴。而且方法或屬性不允許有public、protected等訪問修飾符

 2、當顯式實現接口時,類中用於實現接口的方法只能只能通過接口來調用,而不能通過類的實例來調用。

注意:

  當要實現接口時,應優先使用普通的接口實現方式,除非有非常充分的理由,否則不要輕易使用顯式接口。

自動生成接口代碼框架

  在vs.net中,將鼠標指針放在類之後的接口名上,在接口名上會出現一個藍色空心的小矩形,將鼠標放在小矩形上,會顯示一個灰色背景的按鈕,單擊按鈕,彈出相應菜單,點擊相應命令就可。

接口和抽象類的比較

  當類從接口繼承時,相同的接口成員要在派生類中實現多次。而當類從抽象類中繼承時,派生類中公用的代碼可以放在抽象類中,從而在派生類中不必在編寫重複代碼

發佈了25 篇原創文章 · 獲贊 1 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章