と呼ばれ、いくつかのパラメータ* /)が呼び出され、isValid()メソッドが呼び出されます。 isValid()メソッドは具象クラスでのみ実装され、親クラスから継承したクラスプロパティも使用されることに注意してください。 superを呼び出す以外にisValid()が呼び出されるようにする方法はありますか? 私はパラメータをすべて渡す必要があるという事実を非常に嫌っています。私は完全に間違った方向に行き、これを達成するためのよりクリーンな方法があると思います。 私のコードに残したいのは、抽象クラスの "isValid()呼び出しロジック"です。なぜなら、すべての呼び出しを検証する必要があり、将来このことを思い出すことができないからです。P確保の方法は、私は、このクラスを持っている
ありがとうございます:
ほとんど同じように投稿されています...これは非常に一般的なパターンです。 – Varkhan
メソッドは常に最終的なものでなければなりません(人々が適切に拡張することを信頼しない場合だけでなく)。テンプレートメソッドパターンは、メソッドが最終的であることを意味します。呼び出しのシーケンスを保証する唯一の方法です。 – pgras
"保証する唯一の方法"は、エクステンダを信用できないように聞こえますが:-)はい、私はあなたに同意します適切なインプリメンテーション – kdgregory