**於:
抽象類abstract
抽象方法的類要宣告為抽象類
建構函式和靜態方法不能宣告為抽象
多型性是乙個虛方法,可以重寫這個方法,實現同乙個方法不同的表現形式
對於抽象方法的重寫,是說的對於這個方法的派生類的實現。
對於抽象類和介面的方法都需要實現。
抽象方法是無法寫方法體的
抽象類可以寫 實現的方法
介面不可以寫 實現的方法
案例1:
abstract
class employee//
雇員抽象類
public
string lastname
public
string ssn
public employee(string first, string last, string ssn)
public
abstract
decimal earning();
public
virtual
int time(int times)//
抽象類可以寫虛方法
public
override
string tostring()
lastname: ssn:
", firstname, lastname, ssn);}}
public
class salariedemployee : employee//
薪水雇員類
public
decimal weeksalay
set}
public
override
decimal earning()
public
override
string tostring()//
如果不重寫tostring方法那麼繼承的是抽象類的方法
weeksalay:
",base.tostring(), weeksalay);}}
class houremployee : employee//
小時工類
public
decimal wage
set}
public
int hour
set}
public
override
decimal earning()
else
return wage;
}public
override
string tostring()
hourwage: hourtimes:,wage:
", base.tostring(), wage, hour, wage);//
這裡繼承抽象類的tostring方法
}}class basehe_employee : houremployee//
間接繼承抽象類
public
decimal rate
set
}public
decimal salay
set
}public
override
decimal earning()
public
override
string tostring()
rate:,salay:
", base.tostring(), rate, salay);//
這裡繼承抽象類的tostring方法
}}class test}}
**於:
抽象類abstract
抽象方法的類要宣告為抽象類
建構函式和靜態方法不能宣告為抽象
多型性是乙個虛方法,可以重寫這個方法,實現同乙個方法不同的表現形式
對於抽象方法的重寫,是說的對於這個方法的派生類的實現。
對於抽象類和介面的方法都需要實現。
抽象方法是無法寫方法體的
抽象類可以寫 實現的方法
介面不可以寫 實現的方法
案例1:
abstract
class employee//
雇員抽象類
public
string lastname
public
string ssn
public employee(string first, string last, string ssn)
public
abstract
decimal earning();
public
virtual
int time(int times)//
抽象類可以寫虛方法
public
override
string tostring()
lastname: ssn:
", firstname, lastname, ssn);}}
public
class salariedemployee : employee//
薪水雇員類
public
decimal weeksalay
set}
public
override
decimal earning()
public
override
string tostring()//
如果不重寫tostring方法那麼繼承的是抽象類的方法
weeksalay:
",base.tostring(), weeksalay);}}
class houremployee : employee//
小時工類
public
decimal wage
set}
public
int hour
set}
public
override
decimal earning()
else
return wage;
}public
override
string tostring()
hourwage: hourtimes:,wage:
", base.tostring(), wage, hour, wage);//
這裡繼承抽象類的tostring方法
}}class basehe_employee : houremployee//
間接繼承抽象類
public
decimal rate
set
}public
decimal salay
set
}public
override
decimal earning()
public
override
string tostring()
rate:,salay:
", base.tostring(), rate, salay);//
這裡繼承抽象類的tostring方法
}}class test}}
一步步帶你配置IIS(包括錯誤分析)
今天趁著工作中的問題一下子來解決iis配置 發布 點選vs發布 第一步 新建配置檔案 我取名為website 第二步 選擇發布方法並且選擇把檔案發布到 比喻在d盤建立乙個資料夾website那麼可以選擇檔案發布d website 然後點選發布 完成了專案的發布 下面是重要步驟截圖 配置iis 第一步...
一步步點亮led之軟硬體分析
剩下的4顆led燈 正極接 3.3v,負極接soc的乙個引腳 d22 gpj0 3 d23 gpj0 4 d24 gpj0 5 d25 pwmtout1 gpd0 1 因此,為了點亮led,我們可以讓那些對應的引腳為低電平。下面開始分析軟體方面的問題。如何操控這些引腳為低電平?gpio是晶元的引腳,...
一步步學演算法 演算法分析 6 Floyd演算法
floyd 演算法floyd演算法又稱為 弗洛伊德演算法 插點法,是一種用於尋找給定的 加權圖中頂點間 最短路徑 的演算法。該 演算法名稱以創始人之一 1978年圖靈獎獲得者 史丹福大學電腦科學系教授 羅伯特 弗洛伊德 命名。正如我們所知道的,floyd演算法用於求最短路徑。floyd演算法可以說是...