Java시작과 문법

변수와 primitive type

Java의 primitive type, 참조 타입, 변수 선언과 초기화 규칙, 자동 형변환 감각을 정리합니다.

마지막 수정 2026년 3월 22일

기본 패턴

java
int count = 3;
double price = 19.99;
boolean active = true;
String name = "RefDock";

설명

  • Java 타입은 크게 primitive type과 reference type으로 나뉩니다. int, double, boolean 같은 primitive는 값을 직접 담고, String, 배열, 클래스 객체는 참조를 통해 다룹니다.
  • primitive type은 메모리 표현과 연산 의미가 비교적 단순해서 숫자 계산, 논리 연산, 기본 상태를 표현하는 데 잘 맞습니다.
  • String은 문자처럼 자주 쓰이지만 primitive가 아니라 객체입니다. 그래서 메서드를 가지며, == 비교와 equals() 비교 차이를 나중에 꼭 구분해야 합니다.
  • Java는 변수 선언 시 타입을 명시하는 것이 기본이고, 초기화되지 않은 지역 변수는 바로 쓸 수 없습니다. 이 규칙이 코드 안정성을 높이는 대신 초반에는 엄격하게 느껴질 수 있습니다.
  • 형변환은 자동으로 되는 경우와 명시적으로 캐스팅해야 하는 경우가 나뉩니다. 범위가 좁아지는 변환은 대체로 명시적 cast가 필요하다고 기억하면 출발점으로 좋습니다.

빠른 정리

종류예시
primitive typeint, double, boolean, char
reference typeString, 배열, 클래스 인스턴스
지역 변수초기화 후 사용해야 함
자동 형변환더 넓은 수 표현으로 갈 때 자주 발생
명시적 cast정보 손실 가능성이 있을 때 필요

주의할 점

Java 초반 버그 중에는 String을 primitive처럼 생각하거나, narrowing cast를 가볍게 보는 경우가 많습니다. 값 자체인지, 객체 참조인지 먼저 구분하는 습관이 중요합니다.

참고 링크

2 sources