簡體   English   中英

何時調用超級方法

[英]When to call super in method

我在理解何時在重寫方法中調用super時遇到問題。 根據這篇文章,它應該在底部,但我的同事不同意。

您對此主題有何看法?

答案取決於 實際的決定取決於您在重寫的方法中正在執行的操作,還取決於基類在重寫特定的方法時所期望行為

您要覆蓋的方法的文檔應提供覆蓋時預期行為的詳細信息。 我的個人喜好首先稱為super

這取決於您重寫的方法在做什么。 如果您在談論構造函數,則必須先調用super以確保在設置超類的狀態之前正確構造了超類。 如果是另一種方法,調用的位置取決於轉換的是輸入參數( super需要在那之后)還是返回值( super在此之前)。

鏈接到的“職位”是一個自動代碼審核工具的文檔,而不是建議,它具有告訴其子類應該在其方法的開頭或結尾調用super選項。

我認為規則應符合您的編碼標准。 如果您不同意,這是一個好兆頭,尚不清楚您是否需要為您的項目進行檢查。

就我個人而言,除非有充分的理由,否則我總是將超級電話放在首位。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM