클래스 멤버 (static)
- 멤버들 중 "static" 이라는 키워드가 붙는 멤버들을 클래스 멤버라고 함
일반적으로 멤버라고 하면 인스턴스 멤버를 의미하며, 인스턴스를 빼고 그냥 멤버라고 함
- 클래스 멤버는 인스턴스 멤버와 다르게 인스턴스 안에 존재하지 않고 메모리 상에 따로 존재함
모든 인스턴스에서는 클래스 멤버를 공유함 (동일한 값으로 공유)
- 인스턴스와 상관 없이 클래스 이름으로 접근이 가능하며, 인스턴스를 통해서도 접근이 가능함
단, 될 수 있으면 클래스 이름으로 접근하는 것이 좋다 (인스턴스 멤버와의 구분을 위해서라도...)
- 클래스 멤버는 인스턴스가 생성되기 전에 이미 메모리에 생성되어 있음
JVM이 클래스를 실행할 때 제일 먼저 메모리에 클래스 멤버를 생성시킴
- 클래스 메소드로 지정하려면 반드시 메소드 내부에서 인스턴스 변수를 참조하는 일이 없어야 함
일반 메소드에서 클래스 변수를 참조할 수 있으나, 클래스 메소드에서는 인스턴스 변수를 참조할 수 없음
'내 첫사랑! 컴퓨터 프로그래밍 > 자바는 나의 친구' 카테고리의 다른 글
[자바] Do~while문 (2) | 2023.04.04 |
---|---|
[자바] 비트연산자 (0) | 2023.04.04 |
자바 - 클래스 (0) | 2023.03.28 |
회원관리 프로그램 개발 (0) | 2022.11.29 |
COS Pro 1급 Java 합격 간단 후기 (0) | 2022.11.09 |