타입 : 값이 가질 수 있는 유효한 범위의 집합
타입을 결정하는 시점에 따라 정적 타입과 동적 타입으로 나눌 수 있다.
컴파일 시점 : 정적 타입
→ 소스코드가 기계어로 변환되는 시점
런타임 시점 : 동적 타입
→ 변환된 파일이 메모리에 적재되어 실행되는 시점