※ 공부하면서 새롭게 알게 된 점 위주로 정리 (Java의 정석 3판)
static 특징
- 객체 생성 없이 접근 가능
- 프로그램이 종료 될 때 메모리 해제
- Garbage Collector 관여 x
선언 위치에 따른 변수 종류
class Variables {
int iv; // 인스턴스 변수
static int cv; // 클래스 변수
void method() {
int lv = 0; // 지역 변수
}
}
변수 종류 | 생성 시기 | 특징 |
클래스 변수 | 클래스가 메모리에 올라갔을 때 | 모든 인스턴스가 공통된 저장공간 공유 전역변수 성격 인스턴스 생성하지 않고 접근 가능 |
인스턴스 변수 | 인스턴스가 생성되었을 때 | 인스턴스마다 고유한 상태 유지 |
지역 변수 | 변수 선언문이 수행되었을 때 | 메소드 종료 시 소멸 |
static 메소드
- 객체 생성 없이 클래스를 통해 직접 메소드 호출 가능
- static이 선언되지 않은 변수, 메소드로 접근 불가능
- 객체에서는 호출 불가능
'프로그래밍 > 자바' 카테고리의 다른 글
22-11-06 배운 내용 (0) | 2022.11.07 |
---|---|
22-10-30 배운내용 (0) | 2022.10.30 |
[JAVA] 자바 오버로딩 (Overloading), 가변인자 (varargs) (0) | 2022.09.28 |
[JAVA] 자바 클래스, 인스턴스 (0) | 2022.09.27 |
[JAVA] 자바 클래스 (Class) (0) | 2022.09.14 |