0. 출처
1. 정적(Static)이란?
'고정된'이라는 의미를 가지고 있다.
static 변수와 메서드를 만들 수 있는데, 다른 말로 정적 필드, 정적 메서드라고 하고, 합쳐서 정적 멤버라고도 한다. (클래스 멤버라고도 한다.)
이들은 객체(인스턴스)에 소속된 멤버가 아니라, 클래스에 고정된 멤버이다.
때문에 클래스 로더가 클래스를 로딩해서 메서드 메모리 영역에 적재할 때 클래스별로 관리된다. 따라서 클래스 로딩이 끝나는 즉시 사용이 가능해진다.

Static영역에 할당된 메모리는 모든 객체가 공유하여 하나의 멤버를 어디서든 참조할 수 있는 장점이 있지만?
Garbage Collector의 관리 영역 밖이기 때문에, 프로그램 종료시까지 메모리가 할당된 채로 존재한다는 점...
때문에 static을 너무 남발하면 성능에 영향을 줄 수도 있다.
사용법은 생략한다.
'코딩 > Java' 카테고리의 다른 글
Java - synchronized와 volatile (0) | 2023.06.20 |
---|---|
Java - JVM 구조와 메모리 영역 (Method, Heap, Stack) (0) | 2023.06.11 |
Java - Interface에 Abstract가 아닌 메서드를 작성할 수 있다?? (0) | 2022.02.05 |
Java Singleton Pattern(싱글톤 패턴) (0) | 2022.01.26 |
java - 왜 인터페이스? (0) | 2022.01.26 |
0. 출처
1. 정적(Static)이란?
'고정된'이라는 의미를 가지고 있다.
static 변수와 메서드를 만들 수 있는데, 다른 말로 정적 필드, 정적 메서드라고 하고, 합쳐서 정적 멤버라고도 한다. (클래스 멤버라고도 한다.)
이들은 객체(인스턴스)에 소속된 멤버가 아니라, 클래스에 고정된 멤버이다.
때문에 클래스 로더가 클래스를 로딩해서 메서드 메모리 영역에 적재할 때 클래스별로 관리된다. 따라서 클래스 로딩이 끝나는 즉시 사용이 가능해진다.

Static영역에 할당된 메모리는 모든 객체가 공유하여 하나의 멤버를 어디서든 참조할 수 있는 장점이 있지만?
Garbage Collector의 관리 영역 밖이기 때문에, 프로그램 종료시까지 메모리가 할당된 채로 존재한다는 점...
때문에 static을 너무 남발하면 성능에 영향을 줄 수도 있다.
사용법은 생략한다.
'코딩 > Java' 카테고리의 다른 글
Java - synchronized와 volatile (0) | 2023.06.20 |
---|---|
Java - JVM 구조와 메모리 영역 (Method, Heap, Stack) (0) | 2023.06.11 |
Java - Interface에 Abstract가 아닌 메서드를 작성할 수 있다?? (0) | 2022.02.05 |
Java Singleton Pattern(싱글톤 패턴) (0) | 2022.01.26 |
java - 왜 인터페이스? (0) | 2022.01.26 |