Kupanua Interfaces katika OOP katika TypeScript
Interfaces katika TypeScript zinaweza kurithi
kutoka kwa kila mmoja. Mwingiliano kama huo
unaitwa kupanua interfaces.
Hebu tuangalie kwa mfano. Hebu tuseme tuna
interface ISize:
interface ISize {
height: number;
width: number;
}
Tufanye interface IStyle, ambayo
itapanua ISize:
interface IStyle extends ISize {
color: string;
}
Sasa hebu tuunde darasa Figure,
linalotekeleza interface IStyle.
Darasa letu litahitaji kutekeleza sifa
ya interface yenyewe, na ya mzazi wake.
Tufanye hivi:
class 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;
}
}
Hebu tuangalie utendaji:
let fig = new Figure(130, 200, 'green');
console.log(fig);
Unda interface IProgrammer iliyo na
sifa salary na language.
Acha interface hii irithi IUser
iliyo na sifa name, birthday.
Fanya darasa Employee ambalo
linatekeleza IProgrammer.