【Function Overriding】
virtual
: 當一個父合約的函數、modifier
或狀態變數被宣告virtual
時,表示他在之後繼承的合約中可以被改變(覆寫)。override
: 當一個子合約的函數、modifier
或狀態變數被宣告override
時,表示他正在改變(覆寫)父合約的函數。
Function Overriding 有以下規定和重點:
在多重繼承的時候,最根本的合約需要特別宣告
override
在函數中。如果這個函數的可視性為
private
則不能是virtual
。在介面中所有函數都會自動被視為
virtual
。可以同時override兩個父合約的函式,範例如下:
Last updated
Was this helpful?