Interfész típusként használjuk, csak adattagok vannak.
interface Dolgozo { name: string; city: string; } /*Létrehozunk egy janos nevű objektumot, ami Dolgozo típusú: */ let janos : Dolgozo; //Az adattagoknak értéket adunk: janos = { name: 'névtelen', city: 'ismeretlen' } console.log(janos.name);
A következő példában az interfészben elvont metódust hozunk létre, amit egy osztályban megvalósítunk.
//iDolgozo interfész: interface iDolgozo { getName(): string; } /*A Dolgozo osztály megvalósítja a iDolgozo interfészt: */ class Dolgozo implements iDolgozo { name = "névtelen"; getName(): string { return this.name; } } let janos = new Dolgozo(); console.log(janos.getName());
Adattagok és metódusok keverése:
interface Dolgozo { nev: string; fizetes: number; emelFizetes(mertek: number):void; } /* A CegesDolgozo osztály megvalósítja a Dolgozo interfészt: */ class CegesDolgozo implements Dolgozo { nev: string; fizetes: number; constructor() { this.nev = 'névtelen'; this.fizetes = 0; } emelFizetes(mertek: number): void { this.fizetes += mertek; } } var janos = new CegesDolgozo(); janos.nev = "Park János"; console.log(janos.nev);
interface Dolgozo { nev: string; fizetes: number; lekerFizetes(): number; beallitFizetes(fizetes:number):void; } class CegesDolgozo implements Dolgozo { nev: string; fizetes: number; constructor() { this.nev = 'névtelen'; this.fizetes = 0; } lekerFizetes(): number { return this.fizetes; } beallitFizetes(fizetes: number): void { this.fizetes = fizetes; } } var janos = new CegesDolgozo(); janos.beallitFizetes(300); console.log(janos.lekerFizetes());