1. 전역변수, 지역변수




변수는 크게 두 가지로 구분이 되는데 전역, 지역변수가 있다.


전역변수는 코드 가장 바깥에 선언된 변수로 그 코드 전체적으로 사용이 가능하고


지역변수는 메서드 같이 작은 범위 안에서만 선언되어 사용 가능한 변수이고 범위가 끝나면 해제되어 사용할 수 없다.


아래 코드를 예로 보자.



package chap01.ex02.scope;

public class VarScope {
	
	static String str ="장바구니"; //전역변수

	public static void main(String[] args) {
		
		//변수는 외부에서 생성되면 내부에서 사용 가능
		//내부 생성되면 외부에서 사용 불가능
		//장바구니와 마트 바구니 차이
		System.out.println(str);
		
		int num = 123;
		for(int i = 0; i < 5; i++) {
			System.out.println(i+" : "+num);
			
		}
		System.out.println(str);
		//System.out.println(i);

	}

}


str 변수는 "장바구니"로 초기화되고 바깥에서 선언되어 'System.out.println(str);'에서 무사히 출력이 된다.


하지만 for문 안에서 선언된 i는 for 문이 끝나고 사용하지 못하기 때문에 'System.out.println(i);'는 오류가 발생하게 된다.


위의 예를 복사해서 //System.out.println(i); 중 //를 지워보면 오류가 뜨는걸 확인 할 수 있다.

+ Recent posts