Обычно я расширяю один из этих классов, когда хочу его контролировать - но лучше ли мне создавать класс, который его составляет? Каковы преимущества и недостатки?
В этой записи блога есть обсуждение на эту тему: http://www.moock.org/blog/archives/000248.html