У меня следующий вопрос. Допустим, у меня есть такой интерфейс
interface Animal<T>{
children: Array<T>
}
Теперь я хочу написать метод, который позже примет, например, птица (класс, который реализует Animal). На момент написания метода определения для птицы еще не было. Также может быть, что будет дан экземпляр Акулы. Но минимальным требованием будет то, что любой объект, который он получит, будет экземпляром класса, который реализует Animal.
function doSomething(AnAnimal){
//Do something with animal
}
// Implementation with a class that implements Animal
class Bird<T> implements Animal{
children: Array<T>;
color: string;
chirp(){console.log('peep')}
constructor(Color:string){
this.color = Color;
}
}
let tweety = new Bird('yellow');
doSomething(Tweety)
Я надеюсь, что смогу прояснить, что я пытаюсь сделать, и у вас есть идея, как я могу решить эту проблему в TypeScript.