[TIL] 자바 변수 이해하기

2025. 10. 5. 17:07·Programming Language/Java

변수란?

데이터를 저장하기 위한 메모리 공간에 붙인 이름이에요

  • 값이 변할 수 있기 때문에 ‘변수’ 라고 불립니다.
  • 마치 이사할 때, "이 상자에는 책만 담을 거야", "이 상자에는 옷만 넣을 거야"라고 이름표를 붙이는 것과 같아요. 덕분에 컴퓨터는 데이터를 훨씬 효율적으로 관리할 수 있습니다.

자바와 자바스크립트의 변수 차이

  • 가장 큰 차이점은 타입을 지정하는 방식이에요

자바 (Java) ☕: 정적 타입 언어 (Static Typing)

  • 변수를 선언할 때 반드시 int, String과 같이 어떤 종류의 데이터가 들어갈지 타입을 명시해야 합니다. 한번 타입이 정해지면 다른 타입의 값은 저장할 수 없어 코드의 안정성이 높습니다.
int number = 10;
// number = "hello"; // 에러 발생! int 타입 변수에 문자열을 넣을 수 없음

👉 핵심: 변수를 만들기 전에 어떤 데이터를 담을지 먼저 고민하고, 그에 맞는 '타입'을 고르는 습관을 들여야 합니다!

자바스크립트 (JavaScript) 📜: 동적 타입 언어 (Dynamic Typing)

  • 변수를 선언할 때 타입을 지정하지 않고 let, const, var 같은 키워드만 사용합니다. 변수의 타입은 값이 할당될 때 결정되며, 실행 중에 다른 타입의 값으로 변경할 수 있어 유연성이 높습니다.
let data = 10; // data는 숫자(Number) 타입이 됨 data = "hello"; // 가능! data는 이제 문자열(String) 타입이 됨

변수 종류

변수는 크게 값이 직접 저장되는 기본형(Primitive Type)과, 값이 저장된 곳의 주소가 저장되는 참조형(Reference Type) 으로 나뉩니다.

기본형(primivite type)

문자형

  • char: 한 개의 문자(2byte)를 저장합니다. 작은따옴표(' ')로 값을 감쌉니다.

정수형 byte, short, int, long

  • 소수점 없는 숫자 저장.
  • 크기에 따라 메모리 차이가 다름.

타입 크기 표현 범위

byte 1바이트 -128 ~ 127
short 2바이트 -32,768 ~ 32,767
int 4바이트 약 -21억 ~ 21억
long 8바이트 아주 큰 정수 (끝에 L 붙임)
int age = 21;
long population = 8000000000L;

실수형 float, double

  • 소수점이 있는 숫자 저장.

타입 크기 비고

float 4바이트 끝에 F 붙임 (3.14F)
double 8바이트 기본 실수 타입 (3.14)
float pi = 3.14F;
double avg = 93.7;

논리형 boolean

  • true 또는 false 두 값만 가짐.
boolean isStudent = true;
boolean hasLicense = false;

참조형 (Reference Type)

  • 객체(Object)의 주소를 저장.
  • 기본형처럼 값을 직접 저장하는 게 아니라, 실제 데이터가 저장된 공간의 위치(주소)를 가리킴.
String name = "Hyeonjun's code";
int[] scores = {90, 85, 100};

 

⚡ String은 사실 ‘문자 배열’(char[])을 감싸는 참조형 객체예요.

"Hello"라는 문자열 자체가 아닌, 그 문자열이 저장된 위치를 가리키는 거죠

 


🏷️ 변수 명명 규칙 (Naming Rules)

자바에서는 변수 이름에도 철저한 규칙이 있습니다.

가독성과 유지보수를 위해 꼭 지켜야 해요.

✅ 필수 규칙

  1. 영문자, 숫자, _, $만 사용 가능
  2. 숫자로 시작할 수 없음
  3. 공백, 특수문자(@, #, ! 등) 불가능
  4. 대소문자 구분함 (age ≠ Age)
  5. 예약어 사용 금지 (class, if, for 등)

✨ 권장 컨벤션

  1. camelCase 사용
    • 예: studentName, totalScore
  2. 의미 있는 이름
    • x, y보다는 age, height, userName
  3. boolean은 is/has로 시작
    • isLoggedIn, hasLicense
  4. 상수는 모두 대문자 + 밑줄(_)
    • final double PI = 3.14159;

📚 요약

자바의 변수는 “타입이 있는 상자”이고,

이 상자를 만들 때 이름 붙이는 법(규칙)까지 정해져 있다.

초반엔 복잡하지만, 익숙해지면 훨씬 안정적인 코드 작성이 가능해진다.

 

'Programming Language > Java' 카테고리의 다른 글

[WIL] 자바 주간 회고  (0) 2025.10.13
[TIL] 자바 개발자를 위한 IDE 비교표 (Eclipse, VS Code, JShell, Web IDE)  (0) 2025.10.09
[TIL] 자바 플랫폼 독립 (+ 클래스)  (0) 2025.10.08
[TIL] 자바 메서드  (0) 2025.10.07
[TIL] 자바 IF 조건문 그리고 For 반복문  (0) 2025.10.06
'Programming Language/Java' 카테고리의 다른 글
  • [TIL] 자바 개발자를 위한 IDE 비교표 (Eclipse, VS Code, JShell, Web IDE)
  • [TIL] 자바 플랫폼 독립 (+ 클래스)
  • [TIL] 자바 메서드
  • [TIL] 자바 IF 조건문 그리고 For 반복문
dev_Hyeonjoon
dev_Hyeonjoon
문제를 풀며 사람들에게 감동✨을 전하고 가치를 만드는 개발자가 되고 싶습니다 💻
  • dev_Hyeonjoon
    Hyeonjoon's code
    dev_Hyeonjoon
  • 전체
    오늘
    어제
    • 분류 전체보기 (50)
      • Programming Language (29)
        • JavaScript (0)
        • Java (27)
      • Front-end (10)
        • React-project (5)
        • Vanilla[JS]-project (5)
        • study (0)
      • AI Tools (1)
      • Back-end (0)
      • 독서록 (0)
      • 기타 (5)
      • Trouble Shooting (2)
        • Python (1)
      • 자격증 (1)
      • 알고리즘 (1)
        • 백준 (1)
      • FrameWork (0)
        • Node.js (Express.js) (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    객체지향
    군대에서코딩
    자바공부
    바닐라js
    Til
    조건문
    파이썬
    코딩
    자바
    구름IDE
    Java
    토이프로젝트
    리액트
    군자기계발
    자바기초
    OOP
    vanillajs
    형변환
    사지방
    사지방코딩
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.1
dev_Hyeonjoon
[TIL] 자바 변수 이해하기
상단으로

티스토리툴바