[java] Swing 소개
Java에서 GUI(Graphical User Interface) 프로그래밍을 하기 위해 Swing이라는 라이브러리를 사용합니다. Swing은 Java에서 GUI용 컴포넌트와 컨테이너를 제공하여 다양한 윈도우 애플리케이션을 개발할 수 있게 합니다.
Swing의 특징
Swing은 AWT(Abstract Window Toolkit)를 대체하면서 다음과 같은 특징을 가지고 있습니다:
- 가벼운 컴포넌트: AWT보다 빠르고 경량화된 컴포넌트를 제공합니다.
- 풍부한 컴포넌트: 버튼, 라벨, 리스트, 테이블 등 다양한 GUI 컴포넌트를 제공합니다.
- 멀티 플랫폼 지원: Java의 특성상 플랫폼에 구애받지 않고 동일한 코드로 다양한 운영체제에서 동작합니다.
- 더 나은 룩 앤 필: 시각적인 디자인 측면에서 AWT보다 더 다양한 선택지를 제공합니다.
Swing의 예제 코드
다음은 간단한 Swing 애플리케이션의 예제 코드입니다:
import javax.swing.*;
public class HelloWorldSwing {
private static void createAndShowGUI() {
// Create and set up the window.
JFrame frame = new JFrame("HelloWorldSwing");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// Add the ubiquitous "Hello, World" label.
JLabel label = new JLabel("Hello, World");
frame.getContentPane().add(label);
// Display the window.
frame.pack();
frame.setVisible(true);
}
public static void main(String[] args) {
// Schedule a job for the event dispatch thread:
// creating and showing this application's GUI.
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() {
createAndShowGUI();
}
});
}
}
결론
Swing은 Java에서 GUI 프로그래밍을 위한 강력한 도구로, 다양한 컴포넌트와 플랫폼 독립적인 기능을 제공하여 개발자들이 효율적으로 GUI 애플리케이션을 개발할 수 있게 도와줍니다.
참고 문헌:
- https://docs.oracle.com/javase/tutorial/uiswing/
- https://en.wikipedia.org/wiki/Swing_(Java)