728x90
반응형
SMALL
내부 클래스 Inner Class
: 클래스 내부에 클래스를 선언하여 외부 클래스의 필드 접근에 용이하기 위한 클래스이다.
내부 클래스의 필드를 사용하기 위해서는 외부클래스에서 내부클래스를 객체화 해야한다.
객체화 하는 방법
외부클래스명 (외)객체명 = new 외부클래스생성자( );
외부클래스명.내부클래스명 (내)객체명 = 외부클래스객체명.new 내부클래스생성자( );
// 내부클래스에 접근하기
OutClass out = new OutClass();
OutClass.InnerClass in = out.new InnerClass(); // 내부클래스 필드에 접근
내부클래스를 사용하는 이유
- 캡슐화가 가능하다.
A클래스에 b라는 작업이 자주 쓰이고, 이 작업은 B클래스에서 만들어야 쉽게 관리할 수 있지만, 다른 클래스에서는 b작업이 필요없거나 B클래스를 외부로 노출시키고 싶지 않을 때 사용한다.
- GUI 개발에 용이하다.
a,b 버튼 각각의 기능이 다르다면, 클래스를 별도로 만드는 것 보다 내부 클래스로 만들어서 사용하는 것이 적합하다.
작업파일 확인 방법
작업폴더 > 프로젝트폴더 > 패키지폴더 > 클래스폴더 > bin
내부클래스는 외부클래스명$내부클래스명.class 의 형태로 저장된다.
728x90
반응형
LIST
'Back-End > Java' 카테고리의 다른 글
[Back-End][Java] 35. 예외처리 (Exception) - try/catch (0) | 2021.09.23 |
---|---|
[Back-End][Java] 34. 익명클래스 Annoymous Inner Class (0) | 2021.09.23 |
[Back-End][Java] 32. 인터페이스 Interface (0) | 2021.09.14 |
[Back-End][Java] 31. 객체 지향 프로그래밍 연습하기 (스타크래프트) (0) | 2021.09.14 |
[Back-End][Java] 30. 추상 클래스, 후크메서드, 템플릿 메서드 패턴 (0) | 2021.09.14 |