Method provided by component may need to be implemented, What does this mean? I can't wrap my head around this statement:


  One common drawback of using composition instead of inheritance is that methods being provided by individual components may have to be implemented in the derived type, even if they are only forwarding methods


It's from here.
I am also not entirely sure what it's saying, but to me, it sounds like this is saying that in inheritance, if e.g. the Dog class already has function bark() { print('woof!')}, then the person writing a GoldenRetriever class which inherits from Dog doesn't need to write a bark method since it's inherited from Dog.

On the other hand, if someone is writing a GoldenRetriever class that contains an instance of Dog inside each instance of GoldenRetriever, you will have to define function bark() { this.dog.bark() }.