7. 인터페이스

Lumi·2021년 6월 23일
0

자바의 정석

목록 보기
25/35
post-thumbnail

1. 인터페이스란

일종의 추상 클래스

몸통을 갖춘 일반 메서드 or 멤버변수를 가질수 없다

오직 추상메서드와 상수만ㅇ르 멤버로 가질 수 있다.

2. 인터페이스 작성

  1. 모든 멤버변수는 public static final 이어야 하며 이것은 생략 가능하다.
  2. 모든 메서드는 public abstract 이어야 하며, 이를 생략할 수 있다.
    단 static메서드와 디폴드 메서드는 예외

3. 인터페이스 상속

인터페이스의 상속은 인터페이스 사이에서만 가능하며 클래스와 달리 다중상속이 가능하다.

4. 인터페이스 구현

extends대신 implements를 사용하면 된다.

implements를 받는 class들은 반드시 인터페이스의 모든 메서드를 구현해야 한다.
구현 하지 않을시에는 class에 abstract를 추가해준다

5. 인터페이스를 이용한 다중상속

6. 인터페이스를 이용한 다형성

인터페이스 또한 자손클래스의 인스턴스를 조상타입의 참조변수로 참조하는것이 가능하다.
-> 인터페이스 또한 메서드의 매개변수로 사용 가능

리턴타입이 인터페이스라는 것은 메서드가 해당 인터페이스를 구현한 클래스의 인스턴스를 반환한다는 것을 의미

388p 반드시 참고
5장의 다형성 부분과 동일한 내용.

7. 인터페이스의 장점

  1. 개발시간을 단축
  2. 표준화가 가능
  3. 서로 관계없는 클래스들에게 관계를 맺어줄수 있음
  4. 독릭접인 프로그래밍이 가능

장점 같은 경우에는 스스로 사용하면서 느끼고자함

8. 인터페이스의 이해

  • 클래스를 사용하는 쪽과 제공하는 쪽이 있다.
  • 메서드를 사용하는 쪽에서는 사용하려는 메서드의 선언부만 알고 있으면된다(구현부는 몰라도 된다)

9. 디폴트 메서드와 static메서드

profile
[기술 블로그가 아닌 하루하루 기록용 블로그]

0개의 댓글