솔직히 매일같이 코드를 치고, 보면서 변수에 이름이 있는줄 몰랐다..
너무 쉽게쉽게 지나쳐서 그랬나?
자바에는 네가지 변수가 있다. 네가지 변수는 그 용도와 생명주기에 따라서 이름이 다르다.
'자바의 신' 책에서 아주 이해하기 쉬운 코드가 있어서 가져왔다.
public class 클래스 {
int 인스턴스_변수;
static int 클래스_변수;
public void method(int 매개_변수) {
int 지역_변수;
Bicycle 지역_변수2 = new Bicycle();
}
}
위 예제 하나면 각 변수들의 위치와 생김새를 한번에 이해할수 있다. 아름답다.
그럼 위 코드를 토대로 하나씩 보자.
1. 지역변수
- 메소드안에 선언된 변수
- 메소드 안에서만 유효함.
2. 매개변수
- 메소드를 호출할때 괄호에 담아 넘겨주는 변수
- 메소드가 호출될때 생명이 시작되고, 메소드가 끝나면 소멸됨.
3. 인스턴스 변수
- 메소드 밖에, 클래스 안에 선언된 변수 중에서 static 키워드가 붙지 않은 변수
- 객체가 생성될때 생명이 시작되고, 객체를 참조하고 있는 다른 객체가 없으면 소멸됨.
4. 클래스 변수
- 메소드 밖에, 클래스 안에 선언된 변수 중에서 static 키워드가 붙은 변수
- 클래스가 처음 호출될때 생명이 시작되고, 자바 프로그램이 끝날때 소멸된다.
'Java' 카테고리의 다른 글
[자바의 신] 연산자? (0) | 2020.09.14 |
---|---|
[자바의 신] 자료형이 뭐죠? (0) | 2020.09.10 |
[자바의 신] 클래스와 객체는 같은건가? (0) | 2020.09.09 |
[자바의 신] 객체? 클래스? 메소드? (0) | 2020.09.03 |
[java] OracleJDK 11 설치 (0) | 2020.09.03 |