[Effective Java 3/e] 아이템 52 - 다중정의는 신중히 사용하라


아이템 52 - 다중정의는 신중히 사용하라

다중정의시 주의점

  • 다중정의가 혼동을 일으키는 상황을 피해야 한다.
    • 안전하고 보수적으로 가려면 매개변수 수가 같은 다중정의는 만들지 말자.
  • 다중정의하는 대신 메서드 이름을 다르게 지어주는 것도 좋다.
    • ex) ObjectOutputStrem - writeBoolean(boolean), writeInt(int) …
  • 메서드를 다중정의할 때, 서로 다른 함수형 인터페이스라도 같은 위치의 인수로 받아서는 안된다.

인수를 포워드하여 두 메서드가 동일한 일을 하도록 보장한다

public boolean contentEquals(StringBuffer sb) {
  return contentEquals((CharSequence) sb);
}