TypeScript හි OOP හි අන්තර්මුඛ ප්‍රසාරණය කිරීම

TypeScript හි අන්තර්මුඛ එකිනෙකාගෙන් උරුම විය හැක. එවැනි අන්තර්ක්‍රියාවක් අන්තර්මුඛ ප්‍රසාරණය කිරීම ලෙස හැඳින්වේ. අපි උදාහරණයක් දෙස බලමු. අප සතුව අන්තර්මුඛයක් ඇතැයි සිතමු ISize:

typescriptinterface ISize {
  height: number;
  width: number;
}

අපි අන්තර්මුඛයක් සාදමු IStyle, එය ISize පුළුල් කරයි:

typescriptinterface IStyle extends ISize {
  color: string;
}

දැන් අපි පන්තියක් සාදමු Figure, අන්තර්මුඛය ක්‍රියාත්මක කරයි IStyle. අපේ පන්තිය අන්තර්මුඛයේ දේපල මෙන්ම එහි දෙමාපියන්ගේ දේපල ද ක්‍රියාත්මක කළ යුතුය. අපි එය කරමු:

typescriptclass Figure implements IStyle {
  height: number;
  width: number;
  color: string;
  
  constructor(height: number, width: number, color: string) {
    this.height = height;
    this.width  = width;
    this.color  = color;
  }
}

අපි කාර්යය පරීක්ෂා කරමු:

typescriptlet fig = new Figure(130, 200, 'green');
console.log(fig);
Задание 1

අන්තර්මුඛයක් සාදන්න IProgrammer ගුණාංග සහිතව salary සහ language. මෙම අන්තර්මුඛය උරුම වීමට ඉඩ දෙන්න IUser ගුණාංග සමඟ name, birthday.

Задание 2

පන්තියක් සාදන්න Employee, ක්‍රියාත්මක කරයි IProgrammer.