자바에는 4가지 종류의 변수가 있다. 각각의 정의를 보면 다음과 같다.
1. 지역변수(local variable) : 중괄호 내에서 선언된 변수
2. 매개변수(parameters) : 메소드에 넘겨주는 변수
3. 인스턴스 변수(instance variable) : 메소드 밖에, 클래스 안에 선언된 변수, 앞에는 static이라는 예약어가 없어야 한다.
4. 클래스 변수(class variable) : 인스턴스 변수처럼 메소드 밖에, 클래스 안에 선언된 변수 중에서 타입 선언 앞에 static이라는 예약어가 있는 변수
자바의 4가지 종류의 생명주기는?
1. 지역변수 : 지역변수를 선언한 중괄호 내에서만 유효하다.
2. 매개변수 : 메소드가 호출될 때 생명이 시작되고, 메소드가 끝나면 소멸된다.
3. 인스턴스 변수 : 객체가 생성될 때 생명이 시작되고, 그 객체를 참조하고 있는 다른 변수가 없으면 소멸된다.
-> 가비지 콜렉터(Garbage Collector)가 알아서 메모리를 청소
4. 클래스 변수 : 클래스가 처음 호출될 때 생명이 시작되고, 자바 프로그램이 끝날 때 소멸된다.
참조