# Liskov Substitution Principle
The 3rd of the [[SOLID Principles]], named for its creator, Barbara Liskov.
> “Subclasses agree to a contract; they promise to be substitutable for their superclasses. Substitutability is possible only when objects behave as expected, and subclasses are expected to conform to their superclass’s interface. They must respond to every message in that interface, taking the same kinds of inputs and returning the same kinds of outputs. They are not permitted to do anything that forces others to check their type in order to know how to treat them or what to expect of them.”
-- [[Practical Object-Oriented Design in Ruby - Sandi Metz]]
Analogy: Replacing an injured player during a match