본문 바로가기

Language/Java

Chap07_03 Class Variable(클래스 변수)

1.정의

클래스 내에 기재되어 모든 객체에 똑같이 적용되는 변수

객체에서 임의로 변경 불가능 

public class BlackBox {
    // 인스턴스 변수 -> 각 객체마다 다르게 적용
    String modelName; // 모델명
    String resolution; // 해상도
    int price; // 가격
    String color; // 색상

    int serialNumber; // 시리얼 번호

    //클래스 변수 -> 모든 객체에 똑같이 적용
    //자동 신고 기능
    static boolean canAutoReport = false;
    }

2.초기화

클래스 내에서 선언과 동시에 초기화. (객체에서 바꾸려 하면 에러)

3. 접근

클래스에서 바로 접근 가능.

(클래스이름.클래스 변수)

객체마다 임의로 값을 변경하는 것은 불가능하나, 모든 객체에 적용되는 클래스 값 자체를 바꾸는 것은 가능.

//클래스에서 바로 접근, 업데이트 된 클래스 변수 값은 모든 객체에 적용
BlackBox.canAutoReport = true;