1. 인스턴스 변수 

클래스 영역에 선언되며, 클래스의 인스턴스를 생성할 때 이 변수도 만들어 진다. 인스턴스(객체)가 존재 해야지만 인스턴스 변수도 존재하는 것이다. 객체도 없는데 인스턴스 변수는 존재할 수 없다.

 

2. 클래스 변수

클래스 변수는 인스턴스 변수 앞에 static 만 붙이면 된다. 선언하는 곳은 클래스 영역이며, 클래스 변수는 모든 인스턴스가 공통된 저장공간을 공유하게 된다. C언어의 전역변수와 비슷하다.

여기서 인스턴스 변수와의 차이점은 한 가지 더있는데 생성되는 위치이다. 인스턴스 변수는 인스턴스를 생성한 후에야 사용가능하지만, 클래스 변수는 인스턴스가 없어도 사용 가능하다. 즉, 클래스가 메모리상에 로딩되면 클래스 변수가 생성되는 것이다.

접근 하는 법은 클래스이름 . 클래스변수로 하면된다.

 

3. 지역 변수

메서드 내에 선언되어 생성과 소멸이 메서드 내에서 이루어지는 변수이다. 중괄호가 쓰이는 곳, 예를들어 for문, if문 등 블록 내에서 선언된 지역변수는 중괄호를 벗어나게 되면 소멸된다.

이렇듯 지역 변수는 해당하는 블럭을 벗어나면 소멸되어 사용할 수 없게 된다.

 

<실습>

static이 붙은 클래스 변수에 대해서 실습해보자.



-결과-






LIST

'Programming > Java' 카테고리의 다른 글

Java - 메소드 오버로딩(Method Overloading)  (0) 2015.12.06
Java - JVM의 메모리구조  (0) 2015.12.06
Java - 객체 지향 언어의 정의, 용어  (0) 2015.12.06
Java - while문, do~while문  (0) 2015.12.06
Java - for문  (0) 2015.12.06

+ Recent posts