Есть абстрактный класс, который содержит абстрактный метод(без реализации). Есть обычный класс, который унаследовал абстрактный класс и определил реализацию абстрактного метода:
abstract class Figure {
getArea(): void{
console.log("Not Implemented")
}
abstract getColor(): void {}
}
class Rectangle extends Figure{
getColor() {
console.log('is red');
}
}
// const f = new Figure(); // error
const r = new Rectangle();
console.log(r)
r.getArea();
r.getColor();
DEMO
Проблема в том, что компилятор подчёркивает
abstract getColor
красной линией и выводит такой текст ошибки:
Method 'getColor' cannot have an implementation because it is marked abstract
.
Подскажите, в чём ошибка? Это глюк vscode или я неправильно унаследовался от абстрактного класса?