static vs. stack vs. heap
메모리 영역 |
이용 주체 |
메모리 반환 방식 |
static | static 이 붙은 instance variables, method * 모든 objects에서 사용할 수 있음 (class명.변수, class명.method) | java program 종료 시 |
stack |
method invocations, local variables |
method 가 실행완료되면, method 의 stack frame이 stack에서 사라진다. |
heap |
objects, instance variables | reference 변수의 메모리가 반환되면, Garbage Collector 가 object를 heap에서 정리함 |
cf. 변수 비교
변수 |
설명 |
instance variables |
class 내 선언되어 있으나, method 내에는 있지 않는 변수 |
local variables |
method 내에 선언되어 있는 변수 (method parameter 까지 포함) |
cf. object 생성 방식
1) reference 변수 선언
Dog myDog = new Dog();
2) object 생성
Dog myDog = new Dog();
3) reference 변수와 object 연결
Dog myDog = new Dog();
'Programming Practice > Java' 카테고리의 다른 글
Socket File transfer (0) | 2016.01.26 |
---|---|
DataInputStream/DataOutputStream (0) | 2016.01.26 |
여러 class의 각각의 method를 각각의 간격을 두고 실행하기 (0) | 2015.03.29 |
DateUtil (0) | 2015.03.29 |
class 의 path 로 class 객체 만들기 (0) | 2015.03.29 |