我遇到了很多理解多態性(編譯時間和運行時間)的線程。我很驚訝地看到一些程序員聲稱Overloading是Runtime和Overriding是編譯時的鏈接。
我想從這裏知道的是:
- 運行時多態性與實時例如,小碼和什麼情況下,我們應該使用。
- 使用REAL TIME示例和小代碼編譯時間多態性以及何時使用。
因爲我看過很多理論的定義,但我不理解的是滿意的。
另外,我給了一個想法,我也覺得,重載應該是運行時,因爲,比如說我有一個計算Area的方法,在運行時它只能根據參數I pass來決定調用哪個重載方法如果我只傳遞一個參數,它應該觸發Square,如果參數是2,它應該觸發Rectangle)....那麼是不是我可以聲明它的運行時?它的編譯時間如何? (大多數理論上講,過載是編譯時間,但他們甚至沒有給出一個正確的實時時間的例子...很少聲稱它的運行時間)...
此外,我覺得重寫是編譯時,因爲,當你編寫代碼並且complie,你確保你使用了virtual關鍵字,並且在派生類中重寫了這個方法,否則會給你編譯時錯誤。所以我覺得它的編譯時間,以同樣的方式,我在一個線程看到.....但多數線程聲稱其運行時:d
我很困惑:(這個問題是附加到我的問題1和2,請與實時例如幫助..因爲我已經知道的理論定義.... :(
謝謝....
如果我完全理解你的問題:運行時間,調用虛擬方法。編譯時間,調用任何其他方法。 –
UhmmM傑夫,但它是一切嗎? – Learner