728x90
반응형
변수의 생명주기
// 변수의 생명주기
// - 전역변수 : 클래스의 변수
// - 지역변수1 : 메소드 내부에 선언된 변수
// : 메소드의 시작과 동시에 메모리에 적재
// : 메소드가 종료되면 메모리에서 소멸
// - 지역변수2 : 메소드의 특정 제어문 블럭 내부에서 생성된 변수
// : 일반적인 지역변수와 다르게 메소드의 종료 지점까지 유지되지 않는 변수
// : 제어문의 영역(블럭)이 종료되면 바로 소멸되는 변수
public class Variable_01_LifeCycle {
public static void main(String[] args) {
// 지역변수의 선언(main 메소드에 선언된 변수)
int i;
i = 10;
System.out.printf("i = %d\n", i);
// 지역변수의 선언(main 메소드에 선언된 변수)
int j;
j = 20;
// 모든 지역변수들은 메소드의 종료 전까지 사용할 수 있는 변수
System.out.printf("i = %d, j = %d\n", i, j);
// 일반적인 지역변수는 메소드의 종료 지점까지 유효하기 때문에
// 동일한 이름으로 변수를 생성할 수 없음
// int j;
// 지역변수 타입 2의 선언
// - 반복문 내부에서 선언된 변수
// - 해당 반복문의 실행까지만 유효한 변수
// - 반복문이 종료되면 k 변수는 소멸됩니다.
for( int k = 1; k < 3 ; k++ )
System.out.println(k);
// 제어문 내부에서 선언된 변수는 제어문이 종료되면 소멸되기 때문에
// 동일한 이름의 변수를 다시 사용할 수 있습니다.
for( int k = 1; k < 3 ; k++ )
System.out.println(k);
// 임의의 영역(블럭)을 지정하여 잠시동안 사용할 변수를 활용하는 방법
// - 스플레쉬 윈도우와 같은 임시적인 작업을 처리할 때 사용
{
int k = 100;
System.out.println(k);
}
// 특정 제어문 또는 영역에서 생성된 변수는 해당 영역이 종료되면
// 소멸되기 때문에 외부에서는 사용할 수 없음.
// System.out.println(k);
}
}
728x90
반응형
'개발 > JAVA' 카테고리의 다른 글
자바 레퍼런스 변수 (참조형 변수) (0) | 2020.06.14 |
---|---|
자바 스택(Stack) 메모리 (0) | 2020.06.14 |
반복문 while , do ~ while 문제 (0) | 2020.06.14 |
자바 반복문 do ~ while문 (0) | 2020.06.14 |
자바 - 반복문 while문 (0) | 2020.06.14 |