1. 인터페이스란?
* 추상클래스처럼 미완성클래스로 다른 클래스를 작성할 때 도움을 주는 용도로 사용된다.
2. 인터페이스 특징
* 추상클래스는 멤버변수와 일반메서드를 가질 수 있지만 인터페이스는 가질 수 없다.
* 추상메서드와 상수만 가질 수 있다.
* 일반메서드와 멤버변수처럼 작성해도 자동으로 추상메서드와 상수로 인식한다
- 메서드에는 public abstract가 적용되고, 멤버변수에는 public static final이 적용되기 때문이다.
* 인터페이스 간에 상속이 가능하고 클래스와 다른점은 다중 상속이 가능하다.
3. 인터페이스 작성
* 인터페이스도 추상클래스처럼 인스턴스를 생성할 수 없기 때문에 상속을 통해서 구현부를 완성해야한다.
* 클래스처럼 'extend'로 상속하지 않고 'implements'로 상속한다.(인터페이스간에는 extend를 사용함)
4. 인터페이스 활용
* 개발시간을 단축시킬 수 있다
- 메서드를 사용하는 쪽은 인터페이스 선언부만으로 사용이 가능하기 때문에 구현부 클래스가 완성되지 않아도 개발이 가능하여 동시에 할 수 있다.
* 표준화가 가능하다.
- 기본틀을 인터페이스로 작성 후 개발자들에게 구현하게 하는 방법으로 정형화가 가능하다.
* 서로 관계없는 클래스들에게 관계를 맺어 줄 수 있다.
- 상속관계도 아니고 같은 조상클래스가 아니여도 같은 인터페이스를 구현 함으로 자연스럽게 관계를 맺어 줄 수 있다.
* 독립적인 프로그래밍이 가능하다
- 결합도 최소화
'필수 지식' 카테고리의 다른 글
git 정리 (0) | 2023.02.11 |
---|---|
java - 상속 (0) | 2022.12.20 |
java - 추상 클래스 (0) | 2022.12.20 |
java에서 this와 this() 차이 (1) | 2022.12.20 |
call by reference의 의미 (0) | 2022.10.07 |