抽象類,只為繼承而出現,不定義具體的內容,只規定該有哪些東西;
一般抽象類中只放置抽象方法,只規定了返回類型和參數;
比如:
人 - 有吃飯,睡覺方法;
男人 - 繼承人抽象類,必須實現吃飯,睡覺的方法主體;
女人 - 繼承人抽象類,必須四線吃飯,睡覺方法的主體;
抽象類中可以有普通屬性,通過子類來使用;
1.關鍵字:abstract
2.抽象類可以包含抽象方法和普通方法
3.abstract關鍵字可以定義方法為抽象方法,抽象方法可以沒有函數體
4.抽象類無法被實例化,抽象類主要做為一個基類,讓別的類繼承。
5.sealed和abstract關鍵字不能同時出現
6.如果一個子類繼承自抽象類,那么子類中必須實現所有的抽象方法
7.如果子類中沒有實現父類的抽象方法,那么該子類必須是抽象類
8.如果一個類里面包含抽象方法,那么該類一定是抽象類
有抽象方法的,一定是抽象類
抽象類中,不一定有抽象方法
public abstruct Ren
{
public abstruct Void Eat();
public abstruct Void Sleep();
}
-----------------------------------------------------------------
接口:
極度抽象的類。
總公司--制定了規章制度(接口)--公司必須對員工進行考勤
子公司1--遵循總公司的規章制度--具體實現考勤--打卡
子公司2--遵循總公司的規章制度--具體實現考勤--點名
接口和抽象類的區別:
1.寫法區別
關鍵字:interface
沒有class關鍵字 類名一般用I開頭
不用寫public因為本身就是public,不用寫abstract接口里面所有的都是抽
象的
2.接口里面不能包含普通成員
3.凡是繼承接口的類,全部要實現接口里面的方法
因為團隊開發,每個人負責一個模塊,我只負責人的基本生活部分,另外一個人負責工作部分,還有個人負責娛樂活動部分;
public interface Work
{
void Skill();
void Place();
}
public interface Sports
{
void Sport1();
}
//類庫
有些時候我們需要用到別人寫的類
1.如果該類是源代碼類 .cs文件
將文件拿到項目中,可以選擇添加新建項或者選擇添加現有項
引入相應的命名空間
2.如果該類不是源碼,而是編譯后的 .dll文件(編譯后的類庫)
將文件拿到項目中,添加引用--瀏覽--找到.dll文件
引入相應的命名空間
文章列表