Компоненты Swing легки?

Для новой аутентификации Yahoo вы можете использовать эту библиотеку Python Yahoo-погода

5
задан Joachim Sauer 16 March 2011 в 13:39
поделиться

2 ответа

Swing считают легким, потому что он полностью реализован в Java, не называя собственную операционную систему для рисования компонентов графического интерфейса пользователя.

С другой стороны, AWT (Abstract Window Toolkit) является тяжелым инструментарием, поскольку он просто выполняет вызовы к операционной системе для создания ее компонентов графического интерфейса пользователя.

Эволюция раздела Swing Paint System из статьи Painting in AWT и Swing объясняет различие между легким весом и тяжеловесом:

Когда исходный API AWT был разработан для JDK 1.0, только тяжелые компоненты существовали ("тяжеловес" подразумевает, что компонент имеет свое собственное непрозрачное собственное окно). Это позволило AWT полагаться в большой степени на подсистему краски в каждой собственной платформе.

[...]

С введением легких компонентов в JDK 1.1 ("легкий" компонент является тем, который снова использует собственное окно его самого близкого предка в тяжелом весе), AWT должен был реализовать обработку краски для легких компонентов в общем коде Java.

Поскольку Swing реализован в Java, он действительно имеет некоторый недостаток производительности, однако, я слышу, что производительность улучшилась в недавних выпусках Java.

Преимущество Swing состоит в том, что он имеет намного больше компонентов в наличии такой как JTable и JList которые являются более графическими и расширяемыми, чем компоненты, обеспеченные в AWT, позволяя, чтобы было разработано больше графических больших приложений.

12
ответ дан 18 December 2019 в 07:57
поделиться

Легкий вес по сравнению с тяжеловесом является вопросом того, как компоненты UI реализованы. Тяжелые компоненты переносят объекты операционной системы, легкие компоненты не делают. Они реализованы строго в JDK.

8
ответ дан 18 December 2019 в 07:57
поделиться
Другие вопросы по тегам:

Похожие вопросы: