본문 바로가기

Java

[자바의 신] 변수에도 이름이 있다?

솔직히 매일같이 코드를 치고, 보면서 변수에 이름이 있는줄 몰랐다..

너무 쉽게쉽게 지나쳐서 그랬나?

 

자바에는 네가지 변수가 있다. 네가지 변수는 그 용도와 생명주기에 따라서 이름이 다르다.

 

'자바의 신' 책에서 아주 이해하기 쉬운 코드가 있어서 가져왔다.

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