Java, JS의 자료형

야아니·2025년 11월 17일

Java 백엔드 교육

목록 보기
2/6
post-thumbnail

매일 한 시간 가량의 Database 훈련을 병행하면서, 본격적으로 Java 수업이 시작되었다.

JavaScript (이하 JS) 수업 때와 마찬가지로 ‘자료형’에 대해 먼저 배우게 되었다.


🟦 JS

JS를 공부할 때도 물론 자료형이라는 개념은 알고 있었다.
하지만 JS에서는 let, const로 모든 선언을 끝내버리고, 변수에 어떤 값이 들어오든 타입이 자동으로 바뀌는 구조다.
즉, JS는 동적 타입 언어라서

let x = 10;   // number
x = "hello";  // string
x = true;     // boolean

이렇게 값이 바뀌면 변수의 타입도 즉석에서 바뀐다.
당시엔 “그냥 편하네~” 정도로만 생각했었다.


💡 Java 자료형은 느낌이 완전 다르다

Java는 JS와 달리 정적 타입 언어다.
즉, 변수의 타입을 선언할 때 명확히 지정해야 하고, 타입에 맞지 않는 값을 넣으면 컴파일 단계에서 바로 오류가 난다.


📘 Java 자료형 정리

구분자료형크기특징
숫자(정수)byte1 byte-128 ~ 127
short2 byte-32,768 ~ 32,767
int4 byte기본 정수 타입
long8 byte뒤에 L 붙여 사용
숫자(실수)float4 byte뒤에 F 필요(단정도)
double8 byte기본 실수 타입(배정도)
문자char2 byte유니코드 1문자 저장
String가변 길이문자열(참조형)
논리boolean1 bytetrue / false만 허용 (0, 1 사용 불가)

🐶 클래스 예제에서 느낀 점

Java 수업에서 가장 먼저 만드는 클래스 중 하나가 이런 구조였다:

public class Dog {
    String name = "뽀삐";
    int age = 2;

    public static void main(String[] args) {

    }
}

여기서 바로 실수하기 쉬운 부분이 있다.

  • 문자열은 " "(큰따옴표)
  • 문자는 ' '(작은따옴표)
  • age처럼 숫자를 넣는 필드는 String이 아니라 int 등 숫자 타입을 써야 함

JS에서는 숫자를 "2"로 넣든 2로 넣든 대체로 넘어가지만, Java는 타입을 확실히 구분해야 한다.

이런 작은 차이부터 JS와 Java의 철학 차이가 확 드러난다.


✍️ 회고

자료형이라는 개념은 처음엔 다소 번거롭게 느껴질 수 있지만,
Java처럼 타입이 확실한 언어를 배워보면
“코드가 안정적이게 만들어지는 느낌”을 확실히 경험할 수 있다.

profile
세계평화를 원하는 사람입니다.

0개의 댓글