less than 1 minute read

인터페이스를 사용하면 갖는 장점이 뭘까?

  1. 개발시간 단축: 메서드의 선언부만 알면 되기 때문!
  2. 표준화 가능!
  3. 기본틀을 인터페이스로 지정 후 인터페이스 구현 및 작성을 통한 정형화된 개발 가능
  4. 서로 관계없는 클래스들에게 관계를 맺어줌으로써 코드 재사용성 개선

#Example01 enter image description here

  • 기능을 수행할 ‘SCV’ 클래스에 기능이 적용될 클래스인 Tank와 Dropship에 공통적으로 해당될 메서드 포함시키기
  • 메서드의 매개변수로 공통적으로 접근가능함과 동시에 Tank와 Dropship 각각 조상클래스 상속이 가능한 인터페이스 구현
  • 공통조상 클래스로 형변환한 인스턴스로 기능을 적용받는 두 객체에 접근

enter image description here

Visit Here!

#Example02 enter image description here

상황: Barrack과 Factory를 묶어서 공통적인 기능을 수행할 수 있도록 하기!

  • 두 클래스가 Building 클래스를 상속받으면서도 영향이 없도록 인터페이스를 구현
  • 인터페이스에 추상메서드만 작성
  • 인터페이스가 구현된 클래스 Lift를 생성
  • Lift클래스를 두 클래스 내부에 포함관계로 객체를 생성
  • 오버로딩된 추상메서드 내부에 Lift클래스 객체를 이용하여 메서드 내용 갱신

enter image description here

Visit Here!

장점: 변동이 있는 경우, Lift 클래스 및 Liftable 인터페이스에서만 수정해주면 되기 때문에, 재사용성이 좋음

  1. 독립적인 프로그래밍 가능!

Updated: