1. static 변수
Java에서 Static 키워드를 사용한다는 것은 메모리에 한번 할당되어 프로그램이 종료될 때 해제되는 것을 의미합니다. 이를 정확히 이해하기 위해서는 메모리 영역에 대한 이해가 필요합니다.
[ Static의 메모리 ]
일반적으로 우리가 만든 Class는 Static 영역에 생성되고, new 연산을 통해 생성한 객체는 Heap영역에 생성됩니다. 객체의 생성시에 할당된 Heap영역의 메모리는 Garbage Collector를 통해 수시로 관리를 받습니다. 하지만 Static 키워드를 통해 Static 영역에 할당된 메모리는 모든 객체가 공유하는 메모리라는 장점을 지니지만, Garbage Collector의 관리 영역 밖에 존재하므로 Static을 자주 사용하면 프로그램의 종료시까지 메모리가 할당된 채로 존재하므로 자주 사용하게 되면 시스템의 퍼포먼스에 악영향을 주게 됩니다.
[ Static 변수 특징 ]
-
Static 변수는 클래스 변수이다.
-
객체를 생성하지 않고도 Static 자원에 접근이 가능하다..
Static 변수와 static 메소드는 Static 메모리 영역에 존재하므로 객체가 생성되기 이전에 이미 할당이 되어 있습니다. 그렇기 때문에 객체의 생성없이 바로 접근(사용)할 수 있습니다.
[Java] static변수와 static 메소드
1. Static 정리 Java에서 Static 키워드를 사용한다는 것은 메모리에 한번 할당되어 프로그램이 종료될 때 해제되는 것을 의미합니다. 이를 정확히 이해하기 위해서는 메모리 영역에 대한 이해가 필
mangkyu.tistory.com
선언 위치에 따른 변수의 종류
자바에서의 변수는 클래스 변수, 인스턴스 변수, 지역 변수가 있습니다. 변수의 종류를 결정짓는 것은 '변수가 선언된 위치' 입니다. 다음의 코드를 보면서 말씀드리겠습니다. 코드를 보시면서 어디가 클래스의 영역이고, 어디가 메서드 영역인지 구분하시길 바랍니다.
public class test { int iv; // 인스턴스 변수 static int cv; // 클래스 변수 void method() { int lv; // 지역 변수 } }
위의 그림에는 모두 3개의 int 형 변수가 선언되어 있는데, iv와 cv는 클래스 내부에 선언되어 있으므로 멤버 변수입니다. 그 중 cv는 static으로 선언되었으니 클래스 변수이고, iv는 인스턴스 변수입니다. lv는 메서드 내에 선언 되어 있으므로 지역 변수 입니다.
출처: https://itmining.tistory.com/20
[JAVA] 자바의 변수 (클래스 변수, 인스턴스 변수, 지역 변수)
이 글은 PC 버전 TISTORY에 최적화 되어있습니다. 선언 위치에 따른 변수의 종류 자바에서의 변수는 클래스 변수, 인스턴스 변수, 지역 변수가 있습니다. 변수의 종류를 결정짓는 것은 '변수가 선언
itmining.tistory.com
올인원 패키지 : JAVA 웹 개발 마스터👉https://bit.ly/35aoeAW
'패스트캠퍼스 환급 챌린지' 카테고리의 다른 글
[패스트캠퍼스 수강 후기] {자바 인강} 100% 환급 챌린지 {11} 회차 미션 (0) | 2020.11.12 |
---|---|
[패스트캠퍼스 수강 후기] {자바 인강} 100% 환급 챌린지 {10} 회차 미션 (0) | 2020.11.11 |
[패스트캠퍼스 수강 후기] {자바 인강} 100% 환급 챌린지 {8} 회차 미션 (0) | 2020.11.09 |
[패스트캠퍼스 수강 후기] {자바 인강} 100% 환급 챌린지 {7} 회차 미션 (1) | 2020.11.08 |
[패스트캠퍼스 수강 후기] {자바 인강} 100% 환급 챌린지 {6} 회차 미션 (0) | 2020.11.07 |