변수는 클래스 변수 , 인스턴스 변수, 지역 변수로 세 종류가 있다.
변수를 결정짓는 중요한 요소는 '변수가 선언된 위치'이다
class aaa {
int a = 10;
String b = "인스턴스 변수"
}
package belog;
class aaa {
static int a = 10;
int b = 10;
}
public class practice {
public static void main(String[] args) {
System.out.println(aaa.a);
aaa aa = new aaa();
System.out.println(aa.b);
}
}
10
10
클래스 aaa 에서 선언된 인스턴스 변수 a와 b를 출력하는 예제이다
변수 a의 경우 aaa클래스 에서 바로 출력을 할 수 있지만, b의 경우 aa라는 인스턴스를 생성해야 출력이 가능하다
package belog;
public class practice {
public static void main(String[] args) {
int a = 10;
int b = 20;
for (int i = 0; i < 5; i++) {
int c = 31;
}
a = 11;
b = 21;
c = 31; // 에러발생 - for문안에 선언된 변수 c는 for문 블록밖에서는 사용할 수 없다
}
}