본문 바로가기

아카이브/자바의 정석32

자바의 정석 2장 변수 배운 것 변수 기본형, 참조형 인코딩, 디코딩 형변환 내용 정리 변수 - 단 하나의 값을 저장할 수 있는 메모리 공간 변수의 초기화 - 변수를 선언한 이후부터는 변수를 사용할 수 있으나, 그 전에 반드시 변수를 '초기화'해야 함 - 변수를 사용하기 전에 처음으로 값을 저장하는 것 - 초기화 안하면 쓰레기값이 남아있을 수 있음 식별자 - 변수의 이름처럼 프로그래밍에서 사용하는 모든 이름 - 식별자는 같은 영역 내에서 서로 구분(식별)될 수 있어야 함 데이터 종류 - 문자 - 숫자 ( 정수 / 실수 ) 기본형 - 실제 값(데이터)를 저장 - 논리형, 문자형, 정수형, 실수형 - boolean, char, byte, short, int long, float, double 총 8개 참조형 - 어떤 값이 저장되어.. 2021. 12. 27.
자바의 정석 16장 네트워킹 배운 것 네트워킹에 대한 개략적인 이해 자바에서 ip주소, URL을 다룰 수 있다는 것 소켓 프로그래밍을 통해 통신이 가능하다는 것 내용 정리 네트워킹 - 두 대 이상의 컴퓨터를 케이블로 연결하여 네트워크를 구성하는 것 - 컴퓨터들을 서로 연결하여 데이터를 손쉽게 주고받고 자원을 공유하는 것 - java.net패키지를 사용해 네트워크 어플리케이션의 데이터 통신 부분을 쉽게 작성 가능 서버 - 서비스를 제공하는 컴퓨터 - 일반적으로 서버는 다수의 클라이언트들에게 서비스를 제공 - 서버가 제공하는 서비스의 종류에 따라 파일 서버, 메일 서버, 어플리케이션 서버등이 존재 클라이언트 - 서비스를 사용하는 컴퓨터 서비스 - 서버가 클라이언트로부터 요청받은 작업을 처리하여 그 결과를 제공하는 것 서버가 서비스를 사.. 2021. 12. 24.
자바의 정석 15장 입출력 배운것 자바 입출력에 대한 개략적인 이해 내용 정리 스트림 (InputStream / OutputStream) - 데이터를 운반하는데 사용되는 연결 통로 - 자바에서 입출력을 수행하기 위해 필요 - 단방향 통신 - 입력/출력을 동시에 수행하려면 입력스트림, 출력스트림, 2개의 스트림 필요 - 바이트단위로 데이터 전송 입력스트림 출력스트림 입출력 대상의 종류 FileInputStream FileOutputStream 파일 ByteArrayInputStream ByteArrayOutputStream 메모리(byte배열) PipedInputStream PipedOutputStream 프로세스(프로세스간 통신) AudioInputStream AudioOutputStream 오디오장치 자바에서는 입출력을 처리할 .. 2021. 12. 23.
13장 쓰레드 20200106 suspend() - sleep()처럼 쓰레드를 멈추게 함 - resume()을 호출해야 다시 실행대기 상태가 됨 resume() - suspend()에 의해 정지된 쓰레드를 다시 실행대기 상태로 전환 stop() - 호출되는 즉시 쓰레드 종료 위 메소드들은 교착상태(deadlock)를 일으키기 쉽게 작성되어있어 사용이 권장되지 않음 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 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 package thread; // Runnable인터페이스 상속해 쓰레드 구현 class RunImplEx15 implements Runnable { .. 2021. 1. 6.
13장 쓰레드 20210104 새해가 됐다. sleep(long millis) - 일정시간동안 쓰레드를 멈추게 함 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 31 32 class ThreadEx12_1 extends Thread { public void run() { for(int i=0; i false로 변경, 작업을 계속 진행 System.out.println("isInterrupted() : " + th1.isInterrupted()); } } Colored by Color Scripter cs 입력을 해도 카운트가 종료 안됨 sleep()에 의해 쓰레드가 잠시 멈춰있을 때, interrupt()를 호출하면 Interrupted.. 2021. 1. 4.
13장 Thread 20201120 쓰레드의 우선순위 - 쓰레드는 우선순위(priority)라는 속성(멤버변수)을 가지고 있음, 이 우선순위 값에 따라 쓰레드가 얻는 실행시간 달라짐 - 쓰레드가 수행하는 작업의 중요도에 따라 쓰레드의 우선순위를 서로 다르게 지정하여 특정 쓰레드가 더 많은 작업시간을 갖도록 할 수 있음 - ex) 파일전송기능이 있는 메신저의 경우, 파일다운로드를 처리하는 쓰레드보다 채팅내용을 전송하는 쓰레드의 우선순위가 더 높아야 사용자가 채팅하는데 불편함이 없을 것 1 2 3 4 5 void setPriority(int newPriority) // 쓰레드의 우선순위를 지정한 값으로 변경 int getPriority() // 쓰레드의 우선순위를 반환 public static final int MAX_PRIORITY = 10.. 2020. 11. 20.