Categories: Java

Java 자바 변수(Variable) 선언 및 초기화 변수명 규칙

변수(Variable)란?

자바에서 변수는 데이터를 담는 “상자”나 “그릇”으로 생각할 수 있습니다. 이 상자에는 다양한 종류의 데이터를 담을 수 있고, 프로그램에서는 이 상자에 담긴 데이터를 활용하여 다양한 작업을 수행합니다.

변수의 선언 및 초기화

변수의 선언 (Declaration)

변수를 사용하기 전에 먼저 해당 변수의 타입과 이름을 선언해야 합니다.
선언은 다음과 같은 형식을 갖습니다. ‘자료형 변수이름;’

Java
int myNumber;  // 정수형 변수 선언
String myName; // 문자열 변수 선언
Java

변수의 초기화 (Initialization)

변수를 선언한 후에는 초기값을 할당하여 사용할 수 있습니다.
선언한 변수에 처음으로 값을 저장하는 것을 변수 초기화라고 합니다.
초기화는 선언과 동시에, 또는 이후에 따로 할 수 있습니다.

Java
// 선언과 초기화를 동시에
int myAge = 25;

// 선언 후 초기화
String greeting;
greeting = "Hello, Java!";
Java

리터럴 (Literal)

변수를 초기화할 때 사용되는 값은 리터럴이라 불립니다.
리터럴은 직접 값으로 나타낼 수 있는 데이터를 말하며, 변수에 직접 할당됩니다.

Java
int myNumber = 42;      // 정수형 리터럴
double pi = 3.141592;   // 실수형 리터럴
char myChar = 'A';      // 문자형 리터럴
boolean isJavaFun = true; // 논리형 리터럴
Java

상수 (Constants)

변수를 선언하고 초기화한 후, 해당 변수에 다른 값을 할당할 수 있습니다. 그러나 상수는 초기값을 한 번만 할당하고 이후에는 변경할 수 없습니다.
상수는 final 예약어를 사용하여 선언하며, 보통 대문자로 작성됩니다.

Java
final int MAX_VALUE = 100;
Java

여러 변수의 선언 및 초기화

여러 변수를 동시에 선언하고 초기화할 수 있습니다.

Java
int a = 5, b = 10, c = 15;  // 여러 변수 선언과 초기화
Java

변수의 범위 (Scope)

변수의 범위는 중괄호 {}로 구분된 블록 내에서 유효합니다.
블록을 벗어나면 변수의 유효범위가 끝나며, 다시 선언해야 합니다.

Java
{
    int localVar = 100;  // 블록 내에서 선언된 변수
    System.out.println(localVar);
}

// 아래에서는 localVar에 접근할 수 없음
Java

변수의 명명규칙

식별자 (Identifier) 규칙

  • 변수명은 자바의 식별자로 사용할 수 있어야 합니다.
  • 식별자는 문자로 시작해야 하며, 특수문자는 $와 _만 허용됩니다.
  • 숫자로 시작하면 안되며, 예약어(예: int, if, for 등)를 사용할 수 없습니다.

대소문자 구분

  • 자바는 대소문자를 구분합니다. myVariable과 myvariable은 다른 변수로 취급됩니다.

의미 있는 이름 사용

  • 변수명은 해당 변수가 나타내는 의미를 잘 반영해야 합니다.
  • 길이가 짧아도 명확한 의미를 전달할 수 있도록 지양해야 합니다.

카멜 케이스 (Camel Case) 규칙

  • 변수명은 카멜 케이스 규칙을 따라야 합니다.
  • 첫 단어는 소문자로 시작하고, 이후의 각 단어의 첫 글자는 대문자로 표기합니다.
Java
int myVariable;
String employeeName;
Java

의미 있는 단어 사용

  • 변수명에는 해당 변수의 역할이나 의미를 나타내는 단어를 사용해야 합니다.
  • 가능한 단어의 축약을 피하고 명확한 의미를 부여해야 합니다.
Java
// 좋은 예
int studentAge;
String userName;

// 나쁜 예
int sa;
String un;
Java

명확한 의미 부여

  • 변수명은 해당 변수가 어떤 데이터를 나타내는지 명확하게 드러내야 합니다.
Java
// 좋은 예
int numberOfStudents;
String userAddress;

// 나쁜 예
int n;
String addr;
Java

피해야 할 단어

  • 예약어나 자주 사용되는 라이브러리, 클래스의 이름은 변수명으로 사용하지 않도록 주의해야 합니다.
Java
// 나쁜 예
int int;  // 예약어 사용
String String;  // 클래스명 사용
Java

결론

자바에서 변수는 데이터를 저장하고 처리하는데 사용되는 그릇이라고 생각할 수 있습니다. 변수는 다양한 종류의 데이터를 담을 수 있으며, 프로그램에서는 이러한 변수를 활용하여 작업을 수행합니다.

suover

Recent Posts

실용적인 테스트 가이드: @Mock, @MockBean, @Spy, @SpyBean, @InjectMocks

테스트 시 의존성 주입(Dependency Injection)과 Mockito Spring 애플리케이션을 개발하다 보면, 테스트 코드에서 실제 빈(Bean)을 사용하지…

1주 ago

실용적인 테스트 가이드: Layered Architecture 레이어드 아키텍처

들어가며 스프링 기반 프로젝트에서 좋은 설계 구조와 테스트 전략은 소프트웨어 품질과 유지보수성에 직결됩니다. 최근 학습한…

1주 ago

읽기 좋은 코드를 작성하는 사고법: 논리, 사고의 흐름과 SOLID

들어가며 코드를 작성할 때 종종 "이 로직을 어떻게 단순하고 읽기 쉽게 표현할 수 있을까?" 고민하게…

4주 ago

읽기 좋은 코드를 작성하는 사고법: 추상과 구체

들어가며 코드를 작성하다 보면 "왜 이 코드는 한눈에 이해가 안 될까?" 하는 고민을 종종 하게…

1개월 ago

HTTP 상태코드 총정리 서버-클라이언트 간 명확한 의사소통

HTTP 상태코드란 무엇인가? HTTP 상태코드(HTTP Status Code)는 서버가 클라이언트의 요청을 처리한 결과를 수치화된 코드로 나타내는…

1개월 ago

HTTP 메서드 완벽 가이드 GET, POST, PUT, PATCH, DELETE 등 총정리

HTTP란 무엇인가? HTTP(Hypertext Transfer Protocol)는 웹에서 데이터를 주고받기 위해 사용하는 응용 계층 프로토콜입니다. 우리가 브라우저에서…

1개월 ago