✏️ 이벤트 기반 프로그래밍이벤트 기반 프로그래밍은 이벤트의 발생에 의해 프로그램 샐행 흐름이 결정되는 방식의 프로그래밍 패러다임이다. 이벤트는 키 입력, 마우스 클릭, 마우스 드래그 등 사용자의 액션이나, 센서 등 외부 장치로부터의 입력, 네트워크를 통한 데이터 수신, 다른 스레드나 프로그램으로부터 메시지 수신 등에 의해 발생한다. 아래 그림을 통해 이벤트 발생 사례를 살펴보자.사용자가 마우스로 화면의 New 버튼을 클릭한다.버튼 클릭은 운영체제의 마우스 드라이버를 거쳐 자바 가상 기계에 전달한다.자바 가상 기계는 이벤트 분배 스레드에게 마우스 클릭에 관한 정보를 보낸다.이벤트 분배 스레드는 이벤트(ActionEvent) 객체를 생성한다. 이벤트 객체는 이벤트에 관한 여러 정보를 담은 객체이고, 이벤트..
✏️ GUI 응용프로그램GUI란 Graphical User Interface의 약자로 이미지 혹은 그래픽을 이용하여 메뉴 등을 포함하는 화면을 구성하고, 키보드 외 마우스 등의 편리한 입력 도구를 이용하여 사용자가 입력하기 편하도록 만들어진 사용자 인터페이스이다. 자바는 AWT와 Swing 패키지 등 강력한 GUI 라이브러리를 제공한다. ✏️ AWT와 Swing 패키지자바 언어는 GUI 응용프로그램을 쉽게 작성할 수 있도록 다양한 GUI 컴포넌트(GUI Component)를 제공한다. 자바의 GUI 컴포넌트는 AWT 컴포넌트와 Swing 컴포넌트로 구분되며, 각각 java.awt 패키지와 java.swing 패키지를 통해 공급된다. AWTAWT(Abstract Windowing Toolkit)는 자바가..
✏️ 컬렉션컬렉션(Collection)은 안드로이드를 비롯한 자바 프로그램을 작성하는데 뺴놓을 수 없는 중요한 도구이다. 자바의 JDK는 소위 자료 구조 과목에서 배운 많은 자료 구조들을 컬렉션으로 만들어 제공하고 컬렉션은 제네릭이라는 기법으로 구현되어 있기 때문에 제네릭에 대한 공부도 필요하다. 컬렉션은 배열이 가진 고정 크기의 단점을 극복하기 위해 객체들을 쉽게 삽입, 삭제, 검색할 수 있는 가변 크기의 컨테이너(container)이다.컬렉션은 제네렉(generics)이라는 기법으로 만들어져 있다. 컬렉션 클래스의 이름에는 , , 등이 항상 포함된다. 이들은 타입 매개 변수라고 하는데, 특정 타입만 다루지 않고 여러 종류의 타입으로 변신할 수 있도록, 컬렉션을 일반화시키기 위해 >를 사용한다. 따라..
✏️ Object 클래스Object는 java.lang 패키지에 속한 클래스이며, 모든 클래스에 강제로 상속된다. Object 만이 아무 클래스도 상속받지 않는 유일한 클래스로 계층 구조 상 최상위 클래스이다. Object의 주요 메소드는 아래 표와 같다.메소드설명boolean equals(Object obj)obj가 가리키는 객체와 현재 객체를 비교하여 같으면 true를 리턴Class getClass()현 객체의 런타임 클래스를 리턴int hashCode()현 객체에 대한 해시 코드값 리턴string toString()현 객체에 대한 문자열 표현 리턴void notify()현 객체에 대해 대기하고 있는 하나의 스레드를 깨운다.void notifyAll()현 객체에 대해 대기하고 있는 모든 스레드를 깨운..
- Total
- Today
- Yesterday
- 백준
- CSS
- 우선순위 큐
- 유니온 파인드
- html
- BFS
- 에라토스테네스의 체
- C++
- HTML5
- c++ string
- 자바스크립트
- java
- 이분 매칭
- js
- 스택
- 스프링 부트 crud 게시판 구현
- C++ Stack
- Do it!
- 백준 풀이
- DP
- 카운팅 정렬
- 자료구조
- DFS
- 알고리즘
- 자바
- 투 포인터
- 반복문
- 알고리즘 공부
- 유클리드 호제법
- 세그먼트 트리
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |