题目描述
- 打车时,可以打专车或者快车。任何车都有车牌号和名称。
- 不同车价格不同,快车每公里1元,专车每公里2元。
- 行程开始时,显示车辆信息
- 行程结束时,显示打车金额(假定行程就5公里)
要求 1、画出UML类图;2、用ES6语法写出该示例
解答

UML类图:
代码:
class Car {
constructor(name, number) {
this.name = name;
this.number = number;
}
}
class FastCar extends Car {
constructor(name, number) {
super(name, number);
this.price = 1;
}
}
class SpecialCar extends Car {
constructor(name, number) {
super(name, number);
this.price = 2;
}
}
class Trip {
constructor(distance, car) {
this.distance = distance;
this.car = car;
}
beginTrip() {
console.log(`车辆名称:${this.car.name},车牌号码:${this.car.number}`);
}
endTrip() {
console.log(`行程${this.distance}公里,价格${this.distance * this.car.price}`);
}
}
测试:
//面试题1:车
let car1 = new FastCar('快车',111);
let trip1 = new Trip(5,car1);
trip1.beginTrip();
trip1.endTrip();
let car2 = new SpecialCar('专车',222);
let trip2 = new Trip(5,car2);
trip2.beginTrip();
trip2.endTrip();
结果:
前端学习交流QQ群,群内学习讨论的氛围很好,大佬云集,期待您的加入:862748629 点击加入
版权声明:本文为weixin_43974265原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。