변수 선언과 초기화
·
김영한/자바 입문
사용자가 입력하는 값은 항상 변한다. 예를 들어 사용자가 숫자를 입력하고, 그 숫자를 다시 출력하려면 입력값을 어딘가에 잠깐 저장해두었다가 필요할 때 꺼내 써야 한다.이때 필요한 것이 데이터를 담는 그릇 같은 존재이고, 대부분의 프로그래밍 언어는 이 문제를 변수(variable) 로 해결한다.변수는 이름 그대로 “값이 변할 수 있는 대상”이다. 즉, 값을 담아두고 바꿔가면서 재사용하는 저장 공간이다. 변수에 값을 넣고, 읽는 방법변수의 기본 동작은 두 가지로 딱 나뉜다.값을 넣거나 바꿀 때: = 사용값을 읽을 때: 변수 이름을 그대로 사용예를 들면 이런 형태다.“값 넣기(대입)” → a = 1;“값 읽기” → System.out.println(a); 변수 선언이란 무엇인가변수를 선언하면 컴퓨터는 메모리..
쓰레드란?
·
Java
멀티스레드를 공부하다 보면 항상 막히는 지점이 있다.프로그램 / 프로세스 / 스레드가 각각 뭔지 “말로는 아는 것 같은데”, 막상 코드나 그림으로 나오면 갑자기 섞여버린다.그래서 이번에는 개념을 실행 흐름 기준으로 정리해보려고 한다.핵심은 이거다.프로그램(디스크) → 실행하면 프로세스(메모리) → 그 안에서 일하는 흐름이 스레드(실행 단위) 출발점: 프로세스(Process)와 쓰레드(Thread)프로세스란?실행 중인 프로그램을 프로세스라고 부른다.프로그램 파일(.exe, .jar)은 디스크에 “저장된 상태”일 뿐이고,그걸 실행해서 메모리에 올라가고 CPU를 할당받아 돌아가는 상태가 되면 프로세스가 된다.여기서 중요한 성질이 하나 있다.프로세스는 보통 자기만의 메모리 공간(주소 공간)을 가진다.그래서 프..