Java를 배워보자/2. 자바 기본 문법

자바 변수와 자료형

_Blue_Sky_ 2024. 9. 26. 16:21
728x90
728x90

 

자바 변수와 자료형: 프로그래밍의 기본 단위 심층 분석

변수란 무엇인가?

변수는 프로그래밍에서 데이터를 저장하기 위한 메모리 공간의 이름이라고 할 수 있습니다. 우리가 일상생활에서 사용하는 변수와 비슷하게 생각하면 됩니다. 예를 들어, 어떤 사람의 나이를 저장하기 위해 'age'라는 변수를 만들고, 그 안에 30이라는 값을 저장할 수 있습니다.

변수 선언:

int age = 30;
 

위 코드에서 int는 자료형, age는 변수 이름, 그리고 30은 변수에 저장되는 값입니다.

자료형이란 무엇인가?

자료형은 변수에 저장될 데이터의 종류를 나타냅니다. 즉, 어떤 종류의 데이터를 저장할 수 있는지 정의하는 것입니다. 자바에서 사용되는 주요 자료형은 다음과 같습니다.

기본 자료형 (Primitive Data Types)

  • 정수형:
    • byte: 1바이트, -128 ~ 127 범위의 작은 정수
    • short: 2바이트, -32,768 ~ 32,767 범위의 정수
    • int: 4바이트, -2,147,483,648 ~ 2,147,483,647 범위의 정수
    • long: 8바이트, 매우 큰 정수
  • 실수형:
    • float: 4바이트, 부동소수점
    • double: 8바이트, 배정도 부동소수점
  • 문자형:
    • char: 2바이트, 유니코드 문자 하나
  • 논리형:
    • boolean: true 또는 false 값만 저장

참조 자료형 (Reference Data Types)

  • 클래스: 사용자 정의 데이터 타입
  • 배열: 같은 자료형의 값들을 순서대로 저장하는 자료 구조
  • 인터페이스: 추상 메소드와 상수만을 포함하는 특별한 클래스
  • 문자열: String 클래스를 이용하여 문자열을 다룸

왜 자료형이 중요한가?

  • 메모리 할당: 각 자료형은 메모리에서 차지하는 크기가 다르므로, 적절한 자료형을 선택해야 메모리를 효율적으로 사용할 수 있습니다.
  • 연산: 자료형에 따라 수행할 수 있는 연산이 다릅니다. 예를 들어, 정수형 변수끼리만 산술 연산이 가능합니다.
  • 타입 캐스팅: 서로 다른 자료형 간에 값을 변환할 때 사용됩니다.

변수 선언과 초기화

변수를 선언할 때는 자료형과 변수 이름을 함께 지정하고, 초기화를 통해 처음 값을 할당할 수 있습니다.

int num; // 변수 선언
num = 10; // 초기화
String name = "홍길동"; // 선언과 동시에 초기화
 

변수의 범위 (Scope)

변수는 선언된 위치에 따라 사용 가능한 범위가 다릅니다.

  • 지역 변수: 메소드 내에서 선언된 변수로, 해당 메소드 내에서만 사용 가능합니다.
  • 멤버 변수: 클래스 내에서 선언된 변수로, 클래스의 모든 메소드에서 사용 가능합니다.
  • 전역 변수: 클래스 외부에서 선언된 변수로, 모든 클래스에서 사용 가능하지만 가급적 사용을 자제하는 것이 좋습니다.

변수의 생명주기 (Lifetime)

변수의 생명주기는 변수가 메모리에 존재하는 기간을 의미합니다. 지역 변수는 메소드가 실행될 때 생성되고, 메소드가 종료될 때 소멸됩니다. 멤버 변수는 객체가 생성될 때 생성되고, 객체가 소멸될 때 소멸됩니다.

자료형 변환 (Type Casting)

서로 다른 자료형 간에 값을 변환하는 것을 타입 캐스팅이라고 합니다.

  • 묵시적 형 변환: 데이터 손실의 위험이 없는 경우 자동으로 형 변환이 이루어집니다. (예: int -> long)
  • 명시적 형 변환: 데이터 손실의 위험이 있을 경우 개발자가 직접 형 변환을 해야 합니다. (예: double -> int)

결론

자바 변수와 자료형은 프로그래밍의 가장 기본적인 개념입니다. 이를 정확히 이해하고 활용하는 것은 효율적이고 안정적인 프로그램을 개발하는 데 필수적입니다.

 

728x90
728x90

'Java를 배워보자 > 2. 자바 기본 문법' 카테고리의 다른 글

자바 배열  (0) 2024.09.26
자바 제어문  (0) 2024.09.26
자바 연산자  (0) 2024.09.26