Liskov substitution principle

Liskov substitution principle

(programming, theory)
(LSP) The principle that object-oriented functions that use pointers or references to a base class must be able to use objects of a derived class without knowing it.

Barbara Liskov first wrote it as follows: If for each object o1 of type S there is an object o2 of type T such that for all programs P defined in terms of T, the behaviour of P is unchanged when o1 is substituted for o2 then S is a subtype of T.

A function that violates the LSP uses a reference to a base class and must know about all the derivatives of that base class. Such a function violates the open/closed principle because it must be modified whenever a new derivative of the base class is created.

[Liskov, B. Data Abstraction and Hierarchy, SIGPLAN Notices. 23(5), May 1988].
This article is provided by FOLDOC - Free Online Dictionary of Computing (foldoc.org)
Mentioned in
Copyright © 2003-2025 Farlex, Inc Disclaimer
All content on this website, including dictionary, thesaurus, literature, geography, and other reference data is for informational purposes only. This information should not be considered complete, up to date, and is not intended to be used in place of a visit, consultation, or advice of a legal, medical, or any other professional.