Joshua Bloch の著書『Effective Java』では、クラスが内部動作へのフックとして「慎重に選択された保護されたメソッド」を提供する方法についての議論があります。
次に、著者は次のドキュメントを引用しますAbstractList.removeRange()
。
このメソッドは
clear
、このリストとそのサブリストに対する操作によって呼び出されます。リスト実装の内部を利用するためにこのメソッドをオーバーライドすると、clear
このリストとそのサブリストに対する操作のパフォーマンスが大幅に向上します。
私の質問は、このメソッドをオーバーライドすると、パフォーマンスがどのように改善されるのでしょうか (単純にオーバーライドしないだけではありません)。誰でもこれの例を挙げることができますか?