불로구

30강. (JAVA) 자바 - 중첩 인터페이스 본문

프로그래밍/JAVA

30강. (JAVA) 자바 - 중첩 인터페이스

맹이맹이 2021. 3. 16. 11:14
반응형

중첩 인터페이스

- 중첩 인터페이스는 클래스의 멤버로 선언된 인터페이스이다.

인터페이스를 왜 클래스 내부에 선언할까?!

- 해당 클래스와 긴밀한 관계를 맺는 구현 클래스를 만들기 위해서다.

class A{ [static] interface B{ void m(); } }

중첩 인터페이스는 인스턴스 멤버 인터페이스와 정적 멤버 인터페이스 모두 가능하다

사용법

- 인스턴스 멤버 인터페이스는 밖 클래스의 객체가 있어야 사용 가능

- 정적 멤버 인터페이스는 밖 클래스의 객체 없이 밖 클래스만으로 접근 가능

- A 클래스의 내용을 보면 중첩 인터페이스 타입으로 필드 state를 선언했다.

- setRunning메소드로 구현 객체를 받아 필드에 대입한다.

- start()가 실행됐을 때 인터페이스를 통해 구현 객체의 메소드( run() )을 호출한다.

정리

중첩 클래스

- 클래스 내부에 선언한 클래스

- 두 클래스의 멤버들을 서로 쉽게 접근할 수 있다.

- 외부에 불필요한 관계 클래스를 감춰서 코드의 복잡성 줄인다.

멤버 클래스

- 클래스의 멤버로서 선언되는 중첩 클래스

- 멤버 클래스는 밖 객체의 필요 여부에 따라 인스턴스 멤버 클래스와 정적 멤버 클래스로 구분

로컬 클래스

- 생성자 또는 메소드 블록 내부에 선언된 중첩 클래스

중첩 인터페이스

- 클래스의 멤버로 선언된 인터페이스

- 중첩 인터페이스는 인스턴스 멤버 인터페이스, 정적 멤버 인터페이스 모두 가능

 

https://coupa.ng/bTwNa0

로지텍 G102 IC 마우스, 화이트
반응형
Comments