3-14.클래스(Class)

2023. 3. 30. 10:09Javascript/자바스크립트 제대로 배워볼래?

<!DOCTYPE html>
<html>
<head>
    <title>Document</title>
</head>
<body>
    <script>
        // 클래스 객체를 생성하기 위한 일종의 틀, 설계도
        // 자동차
        class Car {
            constructor(modelName, modelYear, type, price){
                this.modelName = modelName;
                this.modelYear = modelYear;
                this.type = type;
                this.price = price;
            }
            getModelName() {
                return this.modelName;
            }
            getModelYear(){
                return this.modelYear;
            }
            getPrice(){
                return this.price;
            }
            setPrice(price){
                this.price = price;
            }
        }

        let car = new Car("아이오닉", "2021", "e", 4000);
        console.log(car.getModelName());
        console.log(car.getModelYear());
        console.log(car.getPrice());
        car.setPrice(4100);
        console.log(car.getPrice());


        
        let car2 = new Car("제네시스", "2021", "g", 6500);
        console.log(car2.getModelName());
        console.log(car2.getModelYear());
        console.log(car2.getPrice());


        // type이 정해져 있으니 type은 가지고 오지 않아도 됨
        class ElectronicCar extends Car {
            constructor(modelName, modelYear, price, chargeTime){
                super(modelName, modelYear, "e", price);
                this.chargeTime = chargeTime;
            }
            setChargeTime(time) {
                this.chargeTime = time;
            }
            getChargeTime(){
                return this.chargeTime;
            }
        }
        let eleCar1 = new ElectronicCar("아이오닉5", "2021",4000, 60);
        console.log(eleCar1.getModelName());
        console.log(eleCar1.getChargeTime());

        class ElectronicCar2 extends Car {
            constructor(modelName, modelYear, price){
                super(modelName, modelYear, "e", price);
                // this.chargeTime = chargeTime;
            }
            setChargeTime(time) {
                this.chargeTime = time;
            }
            getChargeTime(){
                return this.chargeTime;
            }
        }
        let eleCar2 = new ElectronicCar2("아이오닉5", "2021",4000);
        eleCar2.setChargeTime(60);
        console.log(eleCar2.getModelName());
        console.log(eleCar2.getChargeTime());

    </script>
</body>
</html>

'Javascript > 자바스크립트 제대로 배워볼래?' 카테고리의 다른 글

3-16.Strict Mode  (0) 2023.03.30
3-15.Error - try_catch_finally  (0) 2023.03.30
3-13.모듈(Module)  (0) 2023.03.30
3-12.Async_Await  (0) 2023.03.30
3-11.Promise  (0) 2023.03.30