[Day 4 | Java] 변수의 초기화

y♡ding·2024년 10월 17일
0

데브코스 TIL

목록 보기
13/163

📌 멤버 변수와 지역 변수의 초기화

1️⃣ 인스턴스 멤버 필드

  • 자동 초기화: 값을 명시적으로 넣지 않으면 자동으로 초기화 된다.
    • 클래스 멤버 필드도 동일하게 자동으로 초기화 된다.

모든 객체에 동일한 값을 주어야 할 때는 선언 시 초기화가 간편하지만, 외부 입력에 따라 다르게 초기화할 필요가 있는 경우 생성자를 사용하여 초기화하는 것이 더 유연하고 객체지향적으로 좋다.

2️⃣ 지역 변수

  • 반드시 초기화해야 사용할 수 있다.
    • 지역 변수는 초기화하지 않으면 컴파일 에러 발생
class Variable {
    // 인스턴스 멤버 필드 - 자동 초기화
    String instanceVariable;  // null
    int instanceVariable2;    // 0
    char instanceVariable3;   // '\u0000'

    void doFunc() {
        // 지역 변수 - 반드시 초기화해야 사용 가능
        String localVariable;
        // System.out.println(localVariable); // 초기화하지 않으면 에러 발생
    }
}

public class VariableMainEx03 {
    public static void main(String[] args) {
        Variable v = new Variable();

        // 초기화 없이 멤버 필드 확인 (자동 초기화)
        System.out.println("instanceVariable = " + v.instanceVariable);   // null
        System.out.println("instanceVariable2 = " + v.instanceVariable2); // 0
        System.out.println("instanceVariable3 = " + v.instanceVariable3); // '\u0000'

        v.doFunc();
    }
}

👉🏻 자바 자료형별 초기화 값 정리

자료형초기화 값
byte0
short0
int0
long0L
float0.0f
double0.0d
char'\u0000'
booleanfalse
참조형null


📌
인스턴스 멤버 필드는 자동으로 초기화되지만,
지역 변수는 반드시 초기화해야 사용할 수 있다.

0개의 댓글

관련 채용 정보