Liskovové princip zastoupení
Liskovové princip zastoupení (Liskov substitution principle) je princip objektově orientovaného programování, který říká, že pokud v počítačovém programu je S potomkem předka T, potom objekty typu T mohou být nahrazeny objekty typu S (např. objekt typu T lze zastoupit jakýmkoliv objektem potomka S) beze změny jakékoliv potřebné vlastnosti předka T. Liskovové princip zastoupení je formálněji konkrétní definicí vztahu dědění (subtyping) nazvaného (strong) behavioral subtyping, kterou poprvé představila na konferenci v roce 1987 Barbara Liskovová v hlavním příspěvku s názvem Šablona:Jazyk. Jedná se spíše o sémantický než syntaktický vztah, protože předpokládá sémantickou zaměnitelnost typů v hierarchii, zejména zaměnitelnost jejich objektů. Barbara Liskov a Jeannette Wing tento princip v roce 1994 stručně formulovali takto:
Podmínka na potomka: Nechť
je vlastnost prokazatelná objektu
typu
. Potom
jsou pravdivé pro objekty
typu
, kde
je potomkem
.