일반 속성 클래스 [ 내부 ]
정의
public class Outer{
// Outer 의 Attribute , Constructor , Method
public class Inner {
// inner 의 Attribute , Constructor , Method
}
}
Main 함수 에서의
사용법
외부클래스.내부클래스 객체변수 = 외부객체.new 내부생성자()
// Outer 객체 생성
Outer outer = new Outer;
// inner 객체 생성
Outer.Inner inner = outer.new Inner();
외부클래스에서의 내부클래스
사용법
내부클래스를 일반 속성으로 정의
( 일부 사용 불가능 )
public class Outer {
public class inner {}
Inner inner = new Inner();
// static Inner inner = new Inner(); <- 불가능
// - - - - 메서드에서 사용 - - - -
void method1() {
Inner inner = new Inner();
}
// statci void method1() {
// Inner inner = new Inner(); <- 불가능
// }
}
내부클래스에서의 외부클래스
사용법
전부 사용 가능
public class Outer {
int field1;
static int field2;
void method1() {}
void static method2() {}
public class Inner {
void method() {
field1 = 10;
field2 = 10;
method1()
method2()
}
}
}
'JAVA' 카테고리의 다른 글
Java - 내부 클래스 ( 로컬 클래스 ) (0) | 2023.10.02 |
---|---|
Java - 내부클래스 (정적 속성 클래스) (0) | 2023.10.02 |
Java - 내부 클래스 (0) | 2023.10.02 |
Java - 람다식 표현 (2) | 2023.10.02 |
Java - Files (클래스) (0) | 2023.10.02 |