• 추상화
    • 추상화는 다른 객체들과 구분되는 핵심적인 부분(업무 로직을 포함한 기능)에 집중하여, 복잡도를 관리할 수 있게 해 준다.
    • 추상 클래스 인터페이스 참고

 

  • 상속
    • 프로그램을 개발하다 보면 중복되는 속성과 기능을 개발해야 하는 일이 발생되는데 상속을 사용한다면 중복되는 기능을 반복하여 작업하지 않고 작업을 할 수 있게 해 준다.
      (자식 클래스는 상속을 통해 부모 클래스의 속성과 기능을 물려받는다)
    • 또한, 다형성을 통해 변경이 필요한 부분을 변경하여 사용할 수 있다.

 

  • 객채 지향의 장점
    • 클래스 분리하는 건 의미가 없다.
    • 캡슐화를 예시
      • 음료수 자판기 메서드및 드를 모두 public으로 개발하였을 시 다른 개발자가 음료수의 목록에 새로운 음료수를 추가한다고 하자. 그때 기존 음료수 자판기를사용헀던 class들은 모두 변경해줘야 한다. 왜냐하면 기존엔 새로 추가된 음료수를 염두에 두지 않고 개발했기 떄문이다.
      • 이걸 '결합도'라고 하는데 변수는 private으로 선언 함으로써 내부에서만 사용하고 외부에서 필요한 메서드만 public으로 선엄함으로써 응집도는 강하게 하고 결합도는 낮춰야 프로그램 변경변경 요청 시 적은 양의 코딩으로 프로그램 수정이 가능해진다.

 

'JAVA' 카테고리의 다른 글

Java NIO란?  (0) 2020.12.16
다형성이란?  (0) 2020.08.11
캡슐화란?  (0) 2020.08.11
빌드 도구, Maven 이란?  (0) 2020.08.08
GC(Garbage Collector)이란?  (0) 2020.08.07

+ Recent posts