부모 클래스인 Car의 속성이나 메소드를 가져다 쓸 수 있음 (상속의 개념)
class Car {
mileage = 0;
price = 100;
color = 'white';
drive() {
return 'drive';
}
brake() {
return 'brake';
}
}
class Ford extends Car {};
const myFordCar = new Ford();
class Car {
mileage = 0;
price = 100;
color = 'white';
drive() {
return 'drive';
}
brake() {
return 'brake';
}
}
class Ford implements Car {
mileage = 1;
price = 20;
color = 'black';
drive() {
return 'drive';
}
brake() {
return 'brake';
}
}
만약 Ford 클래스가 Car 클래스와 같은 속성, 메소드를 모두 갖고 있지 않으면 타입 에러 발생!
interface Part {
seats: number;
wheels: number;
}
class Ford implements Car, Part {
mileage = 1;
price = 20;
color = 'black';
seats = 4;
wheels = 4;
drive() {
return 'drive';
}
brake() {
return 'brake';
}
}
그냥 implement한 클래스 또는 타입의 모든 속성 및 메소드를 추가해주면 됨.