본문 바로가기
Java/자바 Swing

[Java] 49. 자바 GUI와 Swing 컴포넌트

글: Song hyun 2024. 4. 25.
728x90
반응형

[Java] 49. 자바 GUI와 Swing 컴포넌트

1. 자바 GUI의 개념

2. Swing 컴포넌트


 

 

1. 자바 GUI의 개념

(1) 그래픽 사용자 인터페이스(Graphic User Interfac; GUI)는 버튼, 스크롤바와 같은 이미지를 사용하여 프로그램을 사용하는 방식이다. GUI의 등장 이전에는 모든 프로그램이 콘솔 기반(CLI)으로, 명령 프롬프트, Git Bash와 같이 텍스트만을 사용해 프로그램을 사용했다. 오늘날 GUI는 객체 지향 기법이 가장 많이 쓰이는 분야로서, GUI 기반의 응용 프로그램을 작성하다보면, 우리는 클래스,객체, 상속 같은 요소들이 어떻게 쓰이는지 직접 확인할 수 있다.

 

(2) GUI에서 사용되는 객체들을 GUI 컴포넌트(Component)라고 부른다. 웹사이트에서 흔히 볼 수 있는 버튼, 체크박스, 라디오박스, 콤보박스 등이 대표적인 컴포넌트의 예이다. 

 

(3) 자바에서 제공되는 GUI로는 AWT(Abstract Windows Toolkit), Swing, JavaFX등이 있다. 

-AWT는 초기 자바 버전에서 제공되었던 GUI이며, 운영체제로부터 직접 자원을 사용해 컴포넌트를 생성했다.

-Swing(스윙)은 순수 자바로 구성되어 있어, 어떤 운영체제에서도 일관된 화면을 보여줄 수 있다.

-JavaFX는 최근에 발표된 GUI로, RIA(Rich Internt Application)/모바일 시장을 겨냥하고 만들어진 GUI다.

Swing 으로 제작한 자바 GUI의 예

 

2. Swing 컴포넌트

(1) Swing 컴포넌트는 윈도우 기반 응용프로그램을 만드는 데 사용되는 JFC(Java Foundation Classes)의 일부이다. 데스크탑 애플리케이션 개발을 돕는 GUI 컴포넌트의 집합이라고 할 수 있다. 이는 완전히 자바로만 작성되었다.

 

(2) Swing 컴포넌트의 특징:

-Swing 컴포넌트는 자바 언어로 작성되었기 때문에, 플랫폼 독립적이고 경량 컴포넌트 구조이다.

-javax.swing 패키지에는 JButton,JTextField,JTextArea등의 클래스들이 존재한다.

-최상위 컨테이너를 제외하고는, 거의 모든 컴포넌트들이 JComponent를 상속받는다는 특징이 있다.

 

-경량 컴포넌트 구조?: 특정 운영체제에 의존하지 않고, 자신만의 UI를 사용하는 GUI

728x90
반응형