[Java] Swing의 기본

PYOUNANI·2022년 11월 11일
0

Java

목록 보기
13/14

Swing의 기본

GUI 프로그래밍

  • CUI 텍스트 기반의 입출력
  • GUI 시각적인 요소들을 통해 프로그램 구성

GUI이란

  • 그래픽을 이용하여 사용자에게 이해하기 쉽고 사용하기 쉬운 입출력 인터페이스 제공한다.

  • 이벤트 기반 프로그래밍
    사용자가 발생시키는 이벤트에 대한 메시지를 처리하는 루틴을 만들어 줍니다.

  • 메시지 구동 구조
    OS는 프로그램 내/외부 변화 발생을 메시지를 통해 해당 프로그램에 알려줍니다.

  • 메시지 기반 및 이벤트 기반 프로그래밍입니다.

스윙(SWING)이란

  • 강력한 GUI 컴포넌트 제공
    JDK에서 제공하는 기본 제공 클래스를 통합니다.

  • 쉬운 GUI 컴포넌트
    객체지향적 문제 해결 관점에서 프로그래밍입니다.

스윙(SWING) 특징

  • AWT를 기반으로 함
    기존의 AWT의 상속 구조를 그대로 가져오지는 않음
    일부 AWT에서 사용하는 클래스를 그대로 사용하기도 함

  • AWT 컴포넌트를 Swing으로 재작성
    다양한 컴포넌트로 쉽게 GUI 프로그래밍 가능
    플랫폼에 관계없이 동일한 모양 지님

Swing 클래스의 특징

  • 클래스 이름이 보통 'J'로 시작합니다.
  • 스윙 컴포넌트의 두가지 유형
  1. 컴포넌트
    • 특정 기능을 수행하는 종단 구성요소이다.
    • JComponent를 상속합니다.
  2. 컨테이너 컴포넌트
    • 다른 컴포넌트를 포함할 수 있는 컴포넌트입니다.
    • AWT의 Container를 상속합니다.

Swing의 기본

컨테이너/컴포넌트


컨테이너/컴포넌트

  • 자신의 영역에 다른 컴포넌트 및 컨테이너를 포함하고 관리하는 역할이다.
  • java.awt.Container로 부터 파생되었다.
    add()로 다른 컴포넌트와 컨테이너 객체를 얻을 수 있습니다.
  • 최상위 컨테이너로 다른 컨테이너에 포함되지 않고 독립적으로도 존재가 가능하다.

컨테이너

컴포넌트

  • 특정 기능을 제공하는 하나의 객체로 추상 클래스인 javax.swing.Jcomponent를 상속받는 클래스이다.
  • 컨테이너에 포함되어 사용되는 경우에만 의미가 있다.
  • 다른 컴포넌트를 포함할 수 없는 종단 컴포넌트이다.

0개의 댓글