Polymorphism
by Artem
TypeScript
class Circle {
public drawCircle() {
return 'A circle';
}
}
class Square {
public drawSquare() {
return 'A square';
}
}
class Triangle {
public drawTriangle() {
return 'A triangle';
}
}
const figures = [new Circle(), new Square(), new Triangle()];
figures.forEach(figure => {
if (figure instanceof Circle) {
figure.drawCircle();
}
if (figure instanceof Square) {
figure.drawSquare();
}
if (figure instanceof Triangle) {
figure.drawTriangle();
}
});