Какая функциональность TypeScript в основном используется для расширения классов и интерфейсов?

Наследование в TypeScript: Расширение классов и интерфейсов

Наследование является одним из основных принципов объектно-ориентированного программирования. Это функциональность TypeScript, которая в основном используется для расширения классов и интерфейсов.

Наследование классов в TypeScript

В TypeScript вы можете использовать ключевое слово extends для создания класса-наследника, который наследует свойства и методы базового класса. Это обеспечивает повторное использование кода и помогает создавать более сложные объекты посредством комбинирования простых.

Пример:

class Person {
   name: string;
   constructor(name: string) {
     this.name = name;
   }
   display():void{
     console.log(this.name);
   }
}

class Employee extends Person {
   empCode: number;
   constructor(empcode: number, name:string) {
     super(name);
     this.empCode = empcode;
   }
   find(name:string):void {
     // код для поиска сотрудника
   }
}

В данном примере класс Employee наследует свойства и методы класса Person через использование ключевого слова extends.

Наследование интерфейсов в TypeScript

В TypeScript, интерфейсы могут наследовать другие интерфейсы используя также ключевое слово extends. Это позволяет создавать более специфические интерфейсы на основе существующих.

Пример:

interface Person {
  name: string;
}

interface Employee extends Person {
  empCode: number;
}

let emp: Employee = {
  name: "Иван",
  empCode: 1
}

В этом примере интерфейс Employee наследует Person и добавляет свое собственное свойство empCode.

Наследование в TypeScript упрощает проектирование и написание кода, гарантируя при этом его стабильное и надежное функционирование. Ключевое слово extends является основным инструментом для расширения классов и интерфейсов в TypeScript.

Related Questions

Считаете ли это полезным?