1樓:匿名使用者
希望有點用處c#是一種現代的物件導向的語言。 繼承(inheritance):繼承是乙個物件導向的詞語。
說明,乙個類(派生類)能分享,其它類(基類)的特徵和行為。派生類和基配圓橋類是"子與父"的關係。 例子:
基類 public class contact /屬性 public string name set }public string email set }public string address set }派生類 public class customer : contact }在上面的例子中,customer 是 contact的子類,不但,繼承了父培猛類的成員,name,email,address;還有自己的成員,gender,income. calling base class members(呼叫基類成員) 派生類能呼叫基類成員,如果,成員的修飾符是"protected"或更大許可權。
在適當的上下文條件下,好像呼叫自己的 成員一樣。派生類呼叫基類的方法:fulladdress();基類的建構函式,可以被派生類呼叫,用base().
例子: abstract public class contact }public class customer : contact }例子中,派生類沒有address成員,可以呼叫基類的建構函式。
如何理解c# 介面中的方法、屬性、索引器和事件?
2樓:旋風少年時代
呵呵,幫不了你啊。
祝你好運。
c#中索引器的實質是什麼,介面的實質是什麼,屬性的實質是什麼
3樓:網友
1、索引符是一種特殊型別的屬性,可以把它新增到乙個類中,以提供類似陣列的訪問。實際上索引的實質就是利用list的可以按下標訪問的特性,比方:
public class animal:collectionbaseset}
2、介面其實跟函式的過載差不多,只不過被過載函式有實現,而介面沒有實現,並且只能依賴類實現。實際上介面跟函式宣告差不多,給出介面名和需要的形參,實際上的實現就可以由繼承類自己寫。
3、屬性主要用於保護資料的安全,在c++中private資料只能通過公共函式操作,保護級別太高,有些時候不用這麼複雜,因此在c#中推出了屬性,可以通過公共屬性操作私有資料,通過設定其中的get和set可以使私有資料唯讀,或者可讀可寫。
4樓:明暄妍
我回答介面的問題,介面實際上是一種標準,我們知道如果乙個類繼承於這個介面,那麼就要給出介面裡方法的實現,實際上就是要求這個類要遵守這個標準。
實際作用是,比如我們有某乙個操作,我們想讓這個操作對不同的類都能使用,但各個類內部結構不同,要實現這個操作,可能會有細微的差別,所以我們通過。
讓各個類繼承於某乙個介面,也就找到了他們共同的遵守標準,然後我們就可以在這樣的前提下,通過介面來操作各個類,來完成所說的那個操作了。
c#一般把什麼定義介面 行為還是什麼
5樓:網友
介面可以包含乙個和多個成員,這些成員可以是方法、屬性、索引指示器和事件,但不能是常量、域、操作符、建構函式或解構函式,而且不能包含任何靜態成員,如下一些說明:
1、介面的成員是從基介面繼承的成員和由介面本身定義的成員。
2、介面定義可以定義零個或多個成員。介面的成員必須是方法、屬性、事件或索引器。介面不能包含常數、欄位、運算子、例項建構函式、解構函式或型別,也不能包含任何種類的靜態成員。
3、定義乙個介面,該介面對於每種可能種類的成員都包含乙個:方法、屬性、事件和索引器。
4、介面成員預設訪問方式是public。介面成員定義不能包含任何修飾符,比如成員定義前不能加abstract,public,protected,internal,private,virtual,override 或static 修飾符。
5、介面的成員之間不能相互同名。繼承而來的成員不用再定義,但介面可以定義與繼承而來的成員同名的成員,這時我們說介面成員覆蓋了繼承而來的成員,這不會導致錯誤,但編譯器會給出乙個警告。關閉警告提示的方式是在成員定義前加上乙個new關鍵字。
但如果沒有覆蓋父介面中的成員,使用new 關鍵字會導致編譯器發出警告。
6、方法的名稱必須與同一介面中定義的所有屬性和事件的名稱不同。此外,方法的簽名必須與同一介面中定義的所有其他方法的簽名不同。
7、屬性或事件的名稱必須與同一介面中定義的所有其他成員的名稱不同。
8、乙個索引器的簽名必須區別於在同一介面中定義的其他所有索引器的簽名。
9、介面方法宣告中的屬性(attributes), 返回型別(return-type), 識別符號(identifier), 和形式引數列表(formal-parameter-lis)與乙個類的方法宣告中的那些有相同的意義。乙個介面方法宣告不允許指定乙個方法主體,而宣告通常用乙個分號結束。
10、介面屬性宣告的訪問符與類屬性宣告的訪問符相對應,除了訪問符主體通常必須用分號。因此,無論屬性是讀寫、唯讀或只寫,訪問符都完全確定。
11、介面索引宣告中的屬性(attributes), 型別(type), 和形式引數列表 (formal-parameter-list)與類的索引宣告的那些有相同的意義。
因此,介面需要定義什麼樣的內容完全取決於需求,以我的經驗,定義共用的屬性、方法這類比較常見,也就是你說的行為。
c#中介面的的乙個問題,書上這麼寫是什麼意思?
6樓:網友
其他都同意樓上的,但。
不能加訪問修飾符,這個是正確的。
在c#當中介面當中的成員不允許加修飾符,預設都是public另c#介面當中只允許定義:屬性、方法、事件、索引器像你說的常量、變數之類的都不能定義在裡面,也就不存在賦值的問題。(根本原因是介面不能例項化)
7樓:網友
求解,是書上寫錯了嗎。
我認為是。介面不能包含欄位。
是絕對不能有方法體吧。
是不能加訪問修飾符。
可以的呀!--補充,你後面又來乙個問題,乙個分號,又跟了一對大括號,這麼寫是不是不大對。
我覺得是印刷錯誤。
c#的名詞解釋
8樓:網友
你要解釋什麼東西?
C事件問題可不可以在事件中,觸發另事件
比如你寫的兩個按鈕事件 void btn1 click object sender,eventargs e void btn2 click object sender,eventargs e 如果在按鈕1裡觸發按鈕2的事件 void btn1 click object sender,eventarg...
C中在類中呼叫其他類的方法,C中在乙個類中呼叫其他類的方法
static void printmenu 方法前少 public 前少public 預設是proctected型別的,只能是其父子類相關的才能呼叫,改成加上public型別 因為str 1 字串是引用型別,比較的並不是他們的內容,而是比較他們的指標,由於str和 1 是分別分配空間的,他們的指標指...
c語言什麼是遞迴方法,C語言什麼是遞迴方法?
程式設計裡面估計最讓人摸不著頭腦的基本演算法就是遞迴了。很多時候我們看明白乙個複雜的遞迴都有點費時間,尤其對模型所描述的問題概念不清的時候,想要自己設計乙個遞迴那麼就更是有難度了。今天我也花費了半個小時來搞明白二叉樹的平衡性的遞迴模型,首先我不明白什麼叫做平衡性,所以花費的時候大部分實在試探理解平衡...