SOLID Principles: Understanding the Liskov Substitution Principle (LSP)