オーバーライド
オブジェクト指向プログラミングにおいてオーバーライド () とは、スーパークラスで定義されたメソッドをサブクラスで定義し直し、動作を上書き（変更）することである。
例えば、あるクラスcodice_1にメソッドcodice_2があり、あるクラスcodice_3がクラスcodice_1を継承したとする。そのとき、クラスcodice_3はクラスcodice_1にあるメソッドcodice_2をオーバーライドすることにより、再定義することができる。これはオブジェクト指向プログラミングにおけるポリモーフィズム（多態性）を実現する際によく使われる。
通例、オーバーライドを可能とする条件として、メソッドの名前、引数の数と型の順序、そして戻り値の型が統一されている必要がある。
メソッドのオーバーロード（多重定義、""）と名前は似ているが、まったく異なる概念である。
Rubyのようにオーバーロードの概念がなく、引数の型や数の条件がなくメソッド名が同一なだけでオーバーライドが成立するプログラミング言語もある。