목록멘토씨리즈 JAVA (48)
열심히 끝까지
GUI(Graphical User Interface) : 컴퓨터를 사용하는 사용자를 위해 만들어진 특정한 기능을 가진 그래픽 요소 JAVA GUI 프로그래밍 : 사용자가 프로그램을 쉽게 다룰 수 있도록 그래픽을 제공하도록 프로그래밍 하는 것 종류 [1] AWT : 자바에서 GUI를 프로그래밍하기 위해 처음으로 제공한 라이브러리 [2] Swing : AWT를 대체하기 위해 자바로 작성된 GUI 객체 - AWT와 Swing의 차이점 : AWT는 운영체제의 자원 활용 컴포넌트(Component)와 컨테이너(Container) - 컴포넌트 : JAVA에서 GUI를 구성하는 요소 ex ) JButton, JCheckBox, JSlider, JTextField, JComboBox, JMenu .. - 컨테이너 : ..
47-1 ) GUI GUI(Graphical User Interface) : 컴퓨터를 사용하는 사용자들을 위해 만들어진 특정한 기능을 가진 그래픽 요소 : User Interface - 사용자가 사용하는 기능 [1] JAVA GUI 프로그래밍 : 사용자가 프로그램을 쉽게 다룰 수 있도록 그래픽을 제공하도록 프로그래밍하는 것 47-2 ) AWT와 Swing [1] AWT란? : 자바에서 GUI를 프로그래밍하기 위해 처음으로 제공하는 라이브러리 - java.awt 패키지에 Frame, Window, Panel, Button, Label 등이 존재 - 운영체제의 자원 활용 [2] Swing이란? : AWT를 대체하기 위해 자바로 작성된 GUI 객체 - javax.swing 패키지에 JFrame, JWindow..
스트림(Stream) - 단 방향 - FIFO 구조 갖고있음 - 출력단위에 따라 바이트 기반과 문자단위로 분류 >출력 단위 : 1byte -> 바이트 기반 스트림 문자 -> 문자 기반 스트림 46-1 ) 문자 기반 스트림 : 16bit의 문자나 문자열을 읽고 쓰는 스트림 [1] 문자 기반 스트림의 활용 : 자바에서 사용하는 char형 변수는 2byte이므로 바이트 기반 스트림은 불편하므로, 문자 단위로 입출력을 다루는 문자 기반 스트림을 제공 Reader Writer int read() void write(int c) int read(char[] cbuf) void write(char[] cbuf) abstract int read(char[] cbuf, int off, int len) abstract v..
45-1 ) IO와 스트림(Stream) 1) IO? : Input(입력), Output(출력) 입력 : 프로그램에 데이터가 들어오는 것 출력 : 프로그램에 데이터가 나가는 것 2) 스트림? : 데이터의 흐름 : 흐름이 정해지면 그 방향으로 간다 키보드, 파일[입력스트림] ---> 프로그램 ---> 모니터, 파일[출력스트림] 스트림의 특징 - 단 방향이다. - FIFO(First In First Out) 구조를 갖고 있다. - 출력단위에 따라 바이트 기반과 문자단위로 분류된다. > 출력 단위 1byte -> 바이트 기반 스트림 문자 -> 문자 기반 스트림 45-2 ) 바이트 기반 스트림 바이트 기반 스트림? : 바이트 단위로 데이터를 입출력하는 스트림 [1] 바이트 기반 스트림의 활용 InputStrea..
스레드 : 하나의 프로세스 안에서 두 가지 이상의 일을 하도록 하는 것 - 프로세스(Process) : 실행 중인 프로그램 - 스레드(Thread) : 프로세스에서 작업을 수행하는 것 - 멀티 스레드 프로세스(Multi-Thread Process) : 두 가지 이상의 작업을 하는 프로세스 [스레드 생성 방법] - 자바 스레드로 작동할 작업이 무엇인지 코드로 작성 1) Thread 클래스 상속 2) Runnable 인터페이스 구현 - 스레드 코드가 실행할 수 있도록 JVM한테 요청 1) 인스턴스 생성 후 start() 호출 2) 인스턴스 생성 후 Thread() 매개변수 생성자에 인자값 전달, start() 호출 1) Thread 클래스 상속 class T1 extends Thread{ public voi..
스레드 : 하나의 프로세스 안에서 두 가지 이상의 일을 하도록 하는 것 - 프로세스(Process) : 실행 중인 프로그램 - 스레드(Thread) : 프로세스에서 작업을 수행하는 것 - 멀티 스레드 프로세스(Multi-Thread Process) : 두 가지 이상의 작업을 하는 프로세스 [스레드 생성 방법] - 자바 스레드로 작동할 작업이 무엇인지 코드로 작성 1) Thread 클래스 상속 2) Runnable 인터페이스 구현 - 스레드 코드가 실행할 수 있도록 JVM한테 요청 1) 인스턴스 생성 후 start() 호출 2) 인스턴스 생성 후 Thread() 매개변수 생성자에 인자값 전달, start() 호출 1) Thread 클래스 상속 class T1 extends Thread{ public voi..
42-1 ) 스레드의 정의 스레드란? : 하나의 프로세스 안에서 두 가지 이상의 일을 하도록 하는 것 - 프로세스(Process) : 실행중인 프로그램 - 스래드(Thread) : 프로세스에서 작업을 수행하는 것 - 멀티 스레드 프로세스(Multi-Thread Process) : 두 가지 이상의 작업을 하는 프로세스 [프로세스가 실행되는 방식] 1. 시간 분할 방식 : 모든 프로세스에게 동일한 시간을 할당하고 골고루 실행되는 방식 2. 선점형 방식 : 각각의 프로세스에게 우선 순위를 부여하고 우선순위가 높은 순으로 실행되는 방식 42-2 ) 스레드의 생성 [JVM이 스레드 처리 시 하는 일] => 스레드 스케줄링 - 스레드가 몇 개 존재하는지 - 스레드가 실행되는 프로그램 코드의 메모리 위치가 어디인지 ..
알고리즘 : 문제를 해결하기 위한 절차적 해결 과정 정렬 알고리즘 : 데이터를 순서대로 나열하기 위한 절차적인 과정 정렬 알고리즘의 종류 1. 선택 정렬(Selection Sort) 2. 삽입 정렬(Insertion Sort) 3. 버블 정렬(Bubble Sort) 41-1 ) 선택 정렬 : 최소값 혹은 최대값을 선택해서 가장 앞에다가 위치하여 선택할 위치를 이동하며 정렬하는 방법 장점 : 구현하기 쉽다. 단점 : 다른 정렬에 비해 시간이 오래 걸린다. 기본 로직 1) 정렬되지 않는 인덱스의 맨 앞에서부터 이를 포함한 그 이후의 값 중 가장 작은 값을 찾아간다. 2) 가장 작은 값을 찾으면 그 값을 현재 인덱스의 값과 바꿔준다. ar[min] ar[i] 3) 다음 인덱스로 이동하여 위 과정을 반복한다. ..