เมื่อเราได้สร้าง Class ขึ้นมาแล้ว อาจพบว่ามีการใช้โค้ดซำ้กันบ้าง
จะเห็นได้ว่าทั้งสอง Class นั้นมี Field color และ Method changeColor เหมือนกัน เราสามารถดึงโค้ดส่วนที่ซำ้ออกมาเป็น Class ใหม่ได้ แล้วใช้ extends เพื่อนำทั้ง Field และ Method มาใช้ (เป็นการ Refactor แบบหนึ่ง)
class Car {
year: number
color: "green" | "red" | "blue"
constructor(year = 2540, color = "green") { // ตั้งค่าเริ่มต้นของ year และ color
this.year = year // ใช้ this เพื่อเซ็ตค่าใน Object
this.color = color
}
}
const c = new Car()
console.log(c.year) // 2540
console.log(c.color) // green
const d = new Car(2549, "blue")
console.log(d.year) // 2549
console.log(d.color) // blue