Я новичок в машинописи и пытаюсь использовать внедрение зависимостей для создания объектов пользовательского интерфейса, которые расширяют базовый абстрактный класс UIObject, но у меня возникает ошибка «Невозможно создать экземпляр абстрактного класса»
Вот упрощенный пример:
abstract class UIObject {
// Some methods
}
class Cursor extends UIObject {
// Some other methods
}
function create (UIObjectClass: typeof UIObject){
return new UIObjectClass()
}
Я хочу, чтобы функция create могла принимать любой класс, расширяющий UIObject, в качестве параметра и создавать экземпляр этого класса.Однако, поскольку UIObject является абстрактным классом, это не работает, так как вы не можете создать экземпляр абстрактного класса.
Какой лучший способ сделать это?