정의·인물·약자 한 문제로
치환·대체가 보이면 무조건 LSP
| 출제 형태 | 핵심 매칭 | 빈출도 |
| 정의 매칭 | '상위 타입을 하위 타입으로 대체' → LSP | 최상 |
| 인물 매칭 | '바버라 리스코프'가 정립 → LSP | 중 |
| 약자 매칭 | L = Liskov Substitution = 리스코프 치환 | 상 |
| 위반 사례 | '자식이 부모 메서드 호출 시 예외' → 위반 | 중 |
개념 연결
LSP를 잘 지키면 OCP도 자연스럽게 따라옴. 부모 타입에 의존해 짜고 자식이 약속을 지키면, 새 자식 추가 시 기존 코드 무수정(=OCP). 그래서 시험에서 OCP·LSP가 같은 묶음에 자주.
⚠️ 시험 함정
LSP는 '상속을 잘하라'가 아님. 핵심은 '자식이 부모의 행동 약속(계약)을 깨면 안 된다'. '상속을 자유롭게 하라'는 함정.