作者doomhammer (流浪者)
看板C_Sharp
標題[問題] 關於一個使用class內function的問題
時間Sat Jul 25 13:09:45 2009
大家好,小弟在看書上的範例的時候看到一種寫法看不懂:
比如我寫了一個abstract class(只能繼承不能用他來建立物件)名叫Employee,Employee
內有兩個function,一個叫ToString(),另一個叫Earnings()。我寫了一個class叫Boss
繼承自Employee,也有他自己的Earning()和ToString().大概像:
public abstract class Employee
{
.
.
.
public override string ToString()
{
回傳字串
}
public abstract decimal Earning()
}
以上是class Employee
publci class Boss: Employee
{
.
.
public override string ToString()
{
回傳字串
}
public override decima Earning()
{
回傳值
}
}
以上是 Class Boss
我建立了一個Boss物件boss.
後來要寫一個程式顯示boss中的Earning的值時看到例子上寫了:
output = boss.Earning().ToString("C") <-不懂之處
boss.Earning()這樣是呼叫boss物件中的Earning(),但是後面接的.ToString()這樣是
什麼用法? (ToString()好像原來就存在,override覆寫成我們想要的形式)
呼叫物件中的function後面可能再接著一個function!?
請問大家這是什麼?(也請鞭小力一點...)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 72.229.53.41
1F:→ james732:decimal tmp = boss.Earning(); output = tmp.ToString 07/25 14:29
2F:→ doomhammer:剛剛看了一下MSDN發現functio後面可以接.ToString(),變 07/25 23:26
3F:→ doomhammer:數後面也可以這樣用,讓結果變成字串... 07/25 23:28
4F:推 Eric30:boss.Earning() 回傳的是一個 decimal 物件,這個物件的 07/26 00:11
5F:→ Eric30:.ToString() 是 decimal 這個 class 本身的函式,跟 Boss 07/26 00:11
6F:→ Eric30:裡面的 ToString() 一點關係也沒有~ :D 07/26 00:12