อินเทอร์เฟซสำหรับคลาส OOP ใน TypeScript

อินเทอร์เฟซใน TypeScript ยังถูกใช้อย่างกว้างขวาง ในฐานะเทมเพลตสำหรับคลาสด้วย เพื่อที่จะ ใช้อินเทอร์เฟซที่ต้องการกับคลาส หลังจากชื่อคลาส ให้เขียนคำสำคัญ implements และตามด้วยชื่ออินเทอร์เฟซ

ในขณะที่อินเทอร์เฟซจะอธิบายเฉพาะ คุณสมบัติและเมธอดสาธารณะของคลาสเท่านั้น ส่วนที่เป็นส่วนตัว จะถูกกำหนดในตัวคลาสเองและไม่ได้ถูกอธิบายในอินเทอร์เฟซ

ลองทดสอบในทางปฏิบัติ สมมติว่าเรามี อินเทอร์เฟซต่อไปนี้ ที่กำหนดคุณสมบัติและ เมธอด:

typescriptinterface IUser {
  name: string;
  greet(): string;
}

มาสร้างคลาสที่ใช้อินเทอร์เฟซนี้กัน ในคลาสนี้ เราต้องมีคุณสมบัติ name และเมธอด greet ที่ถูกนำมาใช้:

typescriptclass User implements IUser {
  name: string;
  
  constructor(name: string) {
    this.name = name;
  }
  
  greet() {
    return `hello, ${this.name}!`;
  }
}
Задание 1

สร้างอินเทอร์เฟซ IMath พร้อมคุณสมบัติ num1 และ num2 และเมธอด getDiv ซึ่งจะทำการหารตัวเลขแรก ด้วยตัวเลขที่สอง

Задание 2

สร้างคลาส Math ที่ใช้อินเทอร์เฟซ IMath