본문 바로가기

Programming/JAVA

[ JAVA ] 기초 문법 1. 변수와 타입

# 1. 변수

(1) 변수란? 

  • 변수란 "하나의 값을 저장할 수 있는 메모리 공간"을 뜻한다.
  • 프로그램은 작업을 처리하는 과정에서 필요에 따라 데이터를 메모리에 저장하는데, 이때 변수를 사용하여 메모리에 값을 저장한다.

 

(2) 변수의 선언

  • 변수의 형태 : 타입 변수이름;
int age;	// 정수(int) 값을 저장할 수 있는 age 변수 선언
double value;	// 실수(double) 값을 저장할 수 있는 value 변수 선언

 

(3) 명명 규칙(naming convention)

  1. 첫 번째 글자는 문자이거나 '$','_'이어야 하고 숫자로 시작할 수 없다. (필수)

  2. 영어 대소문자가 구분된다. (필수)
  3. 첫 문자는 영어 소문자로 시작하되, 다른 단어가 붙을 경우 첫문자를 대문자로 한다. (관례)
  4. 문자 수(길이) 제한은 없다.
  5. 자바예약어는 사용할 수 없다.(필수)

 

(4) 예약어 종류

분류 예약어
기본 데이터 타입 boolean, byte, char, short, int, long, float, double
접근 지정자 private, protected, public
클래스 관련 class, abstract, interface, extends, implements, enum
객체 관련 new, instance of, this, super, null
메소드 관련 void, return
제어문 관련 if, else, switch, case, default, for, do, while, break, continue
논리값 true, false
예외 처리 관련 try, catch, finally, throw, throws
기타 transient, volatile, package, import, synchronized, native, final, static, strictfp, assert

 

# 2. 데이터 타입

모든 변수에는 타입( type: 형(形) )이 있으며, 타입에 따라 저장할 수 있는 값의 종류와 범위가 달라진다.

  • 기본(원시: primitive)타입: 정수, 실수, 문자, 논리 리터럴을 직접 저장하는 타입
값의 종류 리터럴 기본 타입 메모리 사용 크기
정수
  1. 10진수 ex) 0, 75, -100
  2. 8진수 ex) 02, -04
  3. 16진수 ex) 0x5, 0xA, 0xB3
byte 1 byte 8 bit
char 2 byte 16 bit
short byte 16 bit
int byte 32 bit
long 8 byte 64 bit
실수
  1. 소수점이 있는 리터럴
  2. 대문자 E 또는 소문자 e : 5E7 = 5 * 10^7
float 4 byte 32 bit
double 8 byte 64 bit
논리 true, false boolean 1 byte 8 bit
문자 작은 따옴표(')로 묶은 텍스트 char 1 byte 8 bit
문자열 큰 따옴표(")로 묶은 텍스트 String    

 

# 3. 타입 변환

타입변환이란 데이터 타입을 다른 데이터 타입으로 변환하는 것을 말한다.

  • 자동(묵시적) 타입 변환(Promotion) : 프로그램 실행 도중에 자동적으로 타입 변환이 일어나는 것. 작은 크기를 큰 크기를 가지는 타입에 저장될 때 발생함.
    • 큰 크기 타입 = 작은 크기 타입

 

  • 강제(명시적) 타입 변환(casting) : 큰 크기의 타입은 작은 크기의 타입으로 자동 타입 변환을 할 수 없다. 따라서 강제 타입 변환을 하기 위해 캐스팅 연산자 ()를 사용하는데, 괄호 안에 들어가는 타입은 쪼개는 단위이다.
    • 작은 크기 타입 = (작은 크기 타입) 큰 크기 타입