
package myspace4;
public class Car {
private String CarName;
// CarCount가 static인 이유는
//1.공유되어야 하는 값
//2.인스턴스변수면 각인스턴스가 호출될때 마다 새로운 CarCount가 생성되어 본래의 목적에 맞지 않음
//3.사용하는 메서드가 정적메서드임. 메세드 내부에서는 정적변수만 접근할 수 있음
private static int CarCount;
//생성자
Car(String CarName) {
this.CarName = CarName;
System.out.println("차량구입, 이름:" + CarName);
CarCount++;
}
//구매한 차량수를 보여주는 메서드
//메인에서 클래스 자체에 접근하는 방식으로
//즉, 정적메서드(static메서드)를 호출하는 방식으로 호출중이라 stsicㅇ를 붙여줘야 한다
static void showTotalCars(){
System.out.println("구매한 차량 수:" + CarCount);
}
}
package myspace4;
public class CarMain {
public static void main(String[] args) {
Car car1 = new Car("K3");
Car car2 = new Car("G80");
Car car3 = new Car("Model Y");
//구매한 차량 수를 출력하는 static 메서드
Car.showTotalCars();
}
}
