:::: 개발 ::::/::: JAVA :::

객체지향 자바기초 (클래스 변수,인스턴스 변수)

nayha 2018. 7. 18. 22:19

인스턴스 변수

 - 객체를 생성해야지 사용 할 수 있는 변수


class Car{

String color;

int speed;

// 클래스 변수

static int count;

}


Car mycar1 = new Car()

Car mycal2 = new Car()


인스턴스가 생성될때 각각 독립적인 변수 공간 할당 

(mycar1.color , mycar2.color)


클래스 변수

- 인스턴스 생성과 상관없이 클래스 전체에서 공유한다

- 클래스 변수는 static 키워드가 붙는다


테스트 코드


class Car2 {


String color;

int speed;

static int count = 0;


// 생성자

Car2() {

count++;

}


}


public class car_Sub2 {

public static void main(String[] args) {
Car2 mCar = new Car2();
System.out.println("현재 생산된 자동차 수" + mCar.count);

Car2 mCar2 = new Car2();
System.out.println("현재 생산된 자동차 수" + mCar2.count);

Car2 mCar3 = new Car2();
System.out.println("현재 생산된 자동차 수" + mCar3.count);

System.out.println("static 변수는 공유된다");
}

}

실행 결과






반응형