티스토리 뷰
|
만일 적당한 인터페이스 자료형이 있다면 인자나 반환값, 변수 그리고 필드의 자료형은 클래스 대신 인터페이스로 선언하자. 아래와 같은 타이핑하는 습관을 들이는 것이 좋다.
// 인터페이스를 자료형으로 사용하고 있는 바람직한 예제
List<Subscriber> subscribers = new Vector<Subscriber>();
// 클래스를 자료형으로 사용하는 나쁜 예제
Vector<Subscriber> subscribers = new Vector<Subscriber>();
인터페이스를 자료형으로 쓰는 습관을 들이면 프로그램은 더욱 유연해진다. 가령 성능 개선, 기능 추가 등의 이유로 객체의 실제 구현을 다른 것으로 바꿀 때 유연하게 바꿔치기할 수가 있다.
물론 적당한 인터페이스가 없는 경우에는 객체를 클래스로 참조하는 것이 당연하다.
댓글