Swing
thumb|right|Swingの部品を使用したウィンドウの例

は、プログラミング言語 Java のGUIツールキットである。Oracle社のJava Foundation Classesの一部であり、同じくJavaの GUI ツールキットである AWT を拡張したもの。Javaプログラムにグラフィカルユーザインタフェース(GUI)を提供するAPIである。

Swingは、先行するAWTよりも洗練されたGUIコンポーネントを提供するために開発された。Swingは、幾つかのプラットフォームのルック・アンド・フィールをエミュレートしたネイティブなルック・アンド・フィールを提供する。また、「プラグイン可能なルック・アンド・フィール」(Pluggable look and feel)をサポートしていることにより、アプリケーションは簡単にルック・アンド・フィールを切り替えることができ、下で走っているプラットフォームとは関係ないルック・アンド・フィールを使うこともできる。SwingはAWTよりも強力で柔軟なコンポーネントを持つ。ボタン、チェックボックス、ラベルといった馴染み深いコンポーネントの他にも、Swingはタブ付きパネル、スクロール窓、スライダー、スピナ、ツリー表示、表、リストなどの高度なコンポーネントを提供している。

AWTと異なり、Swingコンポーネントはプラットフォーム固有のコードで実装されたものではなく、完全にJavaで書かれている。このため、Swingはプラットフォームに依存しない。このようなコンポーネントを軽量コンポーネントと呼ぶ。AWT はオペレーティングシステムのウィンドウシステムに準じたデザインになるのに対し、 で作成した GUI は Javaプログラム上で描画されるので、より柔軟な設計が可能となる。

SwingはJavaFXにより置き換えられる方針であるが、当面の将来はSwingもJava SE仕様の一部として残る見込みである。
thumb|right|Swingの部品を使用したウィンドウの例
UNK
Q9143
プログラミング言語
Concept
Q251
Java
Concept
Q1193246
GUIツールキット
Concept
Q399841
Oracle
UNK
Q957782
Java Foundation Classes
LOC
Q333307
AWT
MEDIA
Q782543
グラフィカルユーザインタフェース
Concept
Q165194
API
Concept
Q17176533
コンポーネント
Concept
Q1368336
ルック・アンド・フィール
UNK
Q184148
プラグイン
Concept
Q226635
コンポーネント
UNK
Q9135
オペレーティングシステム
Concept
Q1190017
ウィンドウシステム
MISC
Q782543
GUI
Concept
Q251
Java
Concept
Q2270514
JavaFX
Concept
Q859221
Swing
MEDIA
Q859221
Swing
MEDIA
Q859221
Swing
MEDIA
Q859221
Swing
MEDIA
Q859221
Swing
MEDIA
Q859221
Swing
MEDIA
Q859221
Swing
MEDIA
Q859221
Swing
MEDIA
Q859221
Swing
MEDIA
programming language
programming language
instance of
use
instance of
part of
part of
part of
part of
part of
part of
part of
part of
part of
part of
instance of
subclass of
subclass of
instance of
programming language
programming language
programming language
programming language
programming language
programming language
programming language
programming language
programming language
programming language
programming language
programming language
programming language
programming language
programming language
programming language
programming language
programming language