본문 바로가기
프로그래밍 놀이터/디자인 패턴, 리펙토링

[Effective Java] 객체 참조는 그 객체의 인터페이스 타입으로 하자

by 돼지왕 왕돼지 2017. 2. 9.
반응형

 [Effective Java] 객체 참조는 그 객체의 인터페이스 타입으로 하자


ffective java, Final, Interface, [Effective Java] 객체 참조는 그 객체의 인터페이스 타입으로 하자, 객체 생성, 객체 참조, 객체 타입, 구현체, 더 좋은 성능, 매개 변수, 메소드 추가 지원, 반환 값, 베이스 클래스, 변수, 상속, 새로 변경한 구현체, 생성자, 습관, 유연, 인터페이스, 적합한 인터페이스, 클래스, 프레임워크, 프레임워크 객체, 프레임워크 속한 객체, 프레임워크 클래스, 필드


-
객체를 참조할 때는 클래스보다는 인터페이스를 사용해야 한다.
만일 적합한 인터페이스 타입이 있다면, 매개 변수, 반환 값, 변수, 필드 모두 다 인터페이스 타입을 사용해서 선언해야 한다.
유일하게 객체의 클래스를 참조할 필요가 있는 경우는 생성자에서 객체를 생성할 때이다.


-
인터페이스를 객체의 타입으로 사용하는 습관을 들이면, 프로그램이 훨씬 더 유연해진다.


-
인터페이스의 구현체(클래스)를 변경하고자 하는 이유는, 새로 변경한 구현체가 더 좋은 성능을 내는 경우가 많다.


-
만일 적합한 인터페이스가 없다면, 객체를 참조하는 타입을 인터페이스 대신 클래스로 하는 수밖에 없다.
적합한 인터페이스가 없는 경우는 보통 final 로 지정된 값 클래스류이다.
또 하나는 프레임워크에 속한 객체들. 이런 프레임워크 타입의 경우는 최대한 베이스 클래스로 하는 것이 좋다.
마지막의 경우는 인터페이스를 상속하며 새로운 메소드를 추가로 지원할 때이다.





반응형

댓글