この文法は、基本クラスの仮想メソッドを宣言します。仮想メソッドは、特定の実装を提供するために、デリバティブカテゴリで書き直すことができます。
シーン1:部門クラス
public virtual void DoIt();
<景>シーン2:ベースクラス
これは非困難な方法であり、派生クラスで書き直すことはできません。デリバティブは、「新しい」モディファイアを使用して、同じ名前の新しいメソッドを実現する必要があります。
public new void DoIt();
<景>シーン2:部門クラス
「オーバーライド」修飾子は、派生クラスのメソッドが基本クラスの同じ署名の別の方法を書き換えていることを示しています。呼び出しが基本クラスによって呼び出されると、書き換えの方法が実行されます。
public void DoIt();
public override void DoIt();
派生クラスオブジェクトが参照される場合のみ、導出されたクラスで作成された新しい方法が呼び出されます。
推奨用途
以上がメソッド継承の「新しい」キーワードと「オーバーライド」キーワードの違いは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。