Что ж. Легкий компонент в java - это SWING, а тяжелые компоненты - это компоненты AWT.
Внешний вид и свойства тяжелых компонентов зависят от базовой ОС.
Компоненты HeavyWeight-AWT не переносимы. Я имею в виду, что если вы разрабатываете приложение на Linux Box (скажем, SuSe), компилируете его и запускаете на Solaris или Mac, старом добром XP Box, ваше приложение будет выглядеть по-разному для каждой архитектуры; поскольку они зависят от графических компонентов ОС.
В отличие от него - это Lightweight компонент. Они портативны. Вы разрабатываете свое приложение в SuSe Linux и запускаете его в XP, все они выглядят одинаково. Положительным моментом является то, что ваше приложение всегда будет выглядеть одинаково и так, как вы всегда планировали; когда вы его спроектировали.
HW, т.е. AWT, являются более ресурсоемкими компонентами, чем LW Swing.