Hoje, um professor meu comentou que achou estranho que, embora a filosofia da SWT seja a de fazer seus próprios controles por composição, Swing parece favorecer a herança.
Quase não tenho contato com ambas as estruturas, mas pelo que me lembro no Windows Forms do C # geralmente se estende controles, assim como o Swing.
Sendo que geralmente as pessoas tendem a preferir composição a herança, por que o pessoal do Swing / Windows Forms não prefere composição ao invés de herança?