BACK/JAVA

[JAVA] 다형성과 설계

연듀 2024. 1. 30. 17:15

다형성과 설계

 

객체 지향 프로그래밍: 객체들들이 메세지를 주고받고 데이터를 처리

 

다형성은 역할과 구현으로 세상을 구분 하는 것

 

- 클라이언트는 구현 대상 자체가 변경해도 영향을 받지 않고, 대상의 역할(인터페이스)만 알면 된다.

- 유연, 변경 용이

 

역할 = 인터페이스

구현 = 인터페이스를 구현한 클래스

 

 

자바 언어의 다형성 ⇒ 오버라이딩

 

 

OCP(Open - Closed Principle)

  • 새로운 기능이 추가 되었을 때, 기존 코드는 확장할 수 있다.
  • 기존의 코드는 수정되지 않아야 한다.

 

운전자는 자동차 인터페이스만 참조해 자동차 역할에만 의존한다.

새로운 차량을 추가해도 운전자의 코드는 바뀌지 않는다.