Quelle est la différence entre 'extends' et 'implements' dans TypeScript

Je voudrais savoir ce que homme et enfant ont en commun et en quoi ils diffèrent.

class Person {
  name: string;
  age: number;
}
class child extends Person {}
class man implements Person {}

source d'informationauteur davejoem