Das Liskovsche Substitutionsprinzip (LSP) oder Ersetzbarkeitsprinzip ist ein Kriterium in der objektorientierten Programmierung, das die Bedingungen zur Modellierung eines Datentyps für seinen Untertyp angibt. Es besagt, dass ein Programm, das Objekte einer BasisklasseT verwendet, auch mit Objekten der davon abgeleiteten KlasseS korrekt funktionieren muss, ohne dabei das Programm zu verändern.