#TIL, Java Study, 내부클래스 Inner Class
26. 내부 클래스
: 클래스 안의 클래스 ( Inner Class <-> Outter Class )
표기 : A $ AInner.class
( $로 구분, 앞에가 큰 클래스, 뒤에가 내부클래스 )
원래 클래스에는 static이 붙지 않지만, 내부 클래스에는 static이 붙는다.
// 무한대까지 사용은 가능하나, 가독성 측면에서 사용하지 않는 편
(1) 객체 생성 방법
1) 내부 클래스가 일반 클래스일때,
A.AInner1 in1 = new A().new AInner1();
외부클래스.내부클래스 변수 = new 외부클래스().new 내부클래스( );
2) 내부 클래스가 static 클래스일때,
A.AInner2 in2 = new A.AInner2();
외부클래스.내부클래스 변수 = new 외부클래스.내부클래스();
내용을 입력하세요.
ex)day14/A.java
(2) main 위치
1) 제 3 클래스나 외부 클래스에 있을 때는 동일하게 사용 가능.
2) static 내부에서만, main을 정의할 수 있음.
( static 내부 클래스 에서만 static 자원(멤버/메소드)을 정의할 수 있다. )
( 실행시에는 "java A$AInner " 이렇게 입력해주어야 실행 됨. )
3) static 내부클래스에서는 외부클래스의 static 자원만 접근 가능.
( 일반 객체의 자원은 사용이 불가능 함. (객체).(자원) = X )
_ex)day14/B.java
(3) 쓰는 이유
: 외부 클래스의 자원을 '자기 것' 처럼 사용하기 위해서.
( private 자원까지도 사용이 가능하다. (원래는 자식도 못 쓰는 자원임) )
Author And Source
이 문제에 관하여(#TIL, Java Study, 내부클래스 Inner Class), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@limy901/TIL-Java-Study-내부클래스-Inner-Class저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)