type
status
date
slug
summary
tags
category
icon
password

필요성

사각형의 넓이를 구하는 로직을 구현한다고 가정하자. 사각형의 종류이다
  1. 사다리꼴
  1. 등변사다리꼴
  1. 연꼴
  1. 평행사변형
  1. 마름모
  1. 정사각형
  1. 직사각형
notion image
이들의 넓이를 구하는 식이 모두 같진 않으나 공통적으로 같은 것도 있다 단순히 implements 한다면 7개를 모두 구현해야 한다.
하지만 특수한 것을 제외하고 사각형의 기본 계산식은(가로 x 세로) 통용해도 좋지 않을까?그래서 default 메서드가 등장했다. 반드시 구현하지 않아도 실행할 수 있도록 구성할 수 있다.
notion image

예제

위의 코드처럼 기존 구현을 변경하지 않고도 새로 구현할 수 있다. 자바 SOLID 원칙 중 OCP(개방-폐쇄 원칙)을 준수한 코드를 설계할 수 있게 되는 것이다.

주의

여러 인터페이스의 default 메서드 혹은 상위 클래스 메서드와 충돌할 수 있다.
 
깃 컨벤션@DynamicUpdate
Loading...