기본 패턴
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 type | int, double, boolean, char |
| reference type | String, 배열, 클래스 인스턴스 |
| 지역 변수 | 초기화 후 사용해야 함 |
| 자동 형변환 | 더 넓은 수 표현으로 갈 때 자주 발생 |
| 명시적 cast | 정보 손실 가능성이 있을 때 필요 |
주의할 점
Java 초반 버그 중에는 String을 primitive처럼 생각하거나, narrowing cast를 가볍게 보는 경우가 많습니다.
값 자체인지, 객체 참조인지 먼저 구분하는 습관이 중요합니다.
참고 링크
2 sources