3-14.클래스(Class)
2023. 3. 30. 10:09ㆍJavascript/자바스크립트 제대로 배워볼래?
<!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 |