LSP establece que las clases deberían ser sustituibles por sus clases base, lo que significa que las clases derivadas y base deberían ser semánticamente equivalentes.
Pero, ¿LSP también se aplica a las clases que implementan una interfaz? En otras palabras, si un método de interfaz implementado por una clase es semánticamente diferente de lo que el usuario espera que sea, ¿se consideraría una violación del LSP?