I don't think that's correct. He thinks that a team IS a group of players. Just like a list IS a group of items. team.players.count is like list.items.count
But that's a small point, in general I agree that he should not be inheriting from List here.
You count the players on a team, not the team itself: team.count() means nothing Team.players.count() is correct
It would, in fact, be incorrect to even implement a List interface on his Team object