지금을 사는 사람

혼자 공부하는 자바 5주차 본문

스터디/혼공학습단

혼자 공부하는 자바 5주차

지금회 2024. 2. 5. 00:12
728x90

기본미션

: 클래스를 선언할 때 인터페이스는 어떻게 선언될 수 있는지 정리하기

인터페이스란

  • 객체의 사용 방법을 정의한 타입
  • 개발 코드가 인터페이스의 메소드를 호출하면 인터페이스는 객체의 메소드를 호출

추상 메소드 선언

  • 인터페이스의 메소드는 실행 블록이 필요 없는 추상메소드로 선언
  • 구현 클래스는 반드시 추상 메소드를 재정의

인터페이스 구현

  • 개발 코드가 인터페이스 메소드를 호출시 인터페이스는 객체의 메소드를 호출

  • 객체는 인터페이스에서 정의된 추상 메소드와 동일한 이름, 매개 타입, 리턴 타입을 가진 실체 메소드를 가지고 있어야 함

  • 이를 인터페이스의 구현 객체라고 하며

  • 구현 객체를 생성하는 클래스를 구현 클래스라고 부른다.

다중 인터페이스 구현 클래스

  • 객체는 인터페이스를 다중 상속 가능

  • 다중 인터페이스 구현 시, 구현 클래스는 모든 인터페이스의 추상 메소드에 대해 실체 메소드를 작성 필요

인터페이스 사용

  • 클래스를 선언할 때 인터페이스는 필드, 생성자 또는 메소드의 매개변수, 생성자 또는 메소드의 로컬 변수로 선언될 수 있음

  • 인터페이스가 필드 타입으로 사용될 경우
    필드에 구현 객체를 대입 가능

  • 인터페이스가 생성자의 매개 변수 타입으로 사용될 경우 new 연산자로 객체를 생성할 때 구현 객체를 생성자의 매개값으로 대입할 수 있음

  • 인터페이스가 로컬 변수 타입으로 사용될 경우
    변수에 구현 객체를 대입할 수 있음

  • 인터페이스가 메소드의 매개 변수 타입으로 사용될 경우 메소드 호출 시 구현 객체를 매개값으로 대입할 수 있음

728x90