Java

[Java] 변수

콩스프 2022. 10. 10. 19:57

1. 변수

프로그램은 작업을 처리하는 과정에서 필요에 따라 데이터를 메모리에 저장

-> 이때 사용하는 것이 변수

 

변수 (Variable) : 하나의 값저장할 수 있는 메모리 공간
  • 프로그램에 의해 수시로 값이 변동될 수 있기 때문에 변수라는 이름을 갖게 됨
  • 하나의 값만 저장할 수 있음
  • 다양한 타입의 값을 저장할 수 없고 한 가지 타입의 값만 저장할 수 있음
    EX) 정수 타입 변수에는 정수 값만 저장할 수 있고
           실수 타입 변수에는 실수 값만 저장할 수 있음

 

2. 변수의 선언

변수를 사용하기 위해서는 변수를 선언해야 함

변수 선언은 어떤 타입의 데이터를 저장할 것인지와 변수 이름이 무엇인지 결정함

 

타입 : 변수에 저장되는 값의 종류범위를 결정짓는 요소

같은 타입의 변수는 콤마 (,)를 이용해서 한꺼번에 선언할 수 있음

int x, y, z;

 

2.1 변수이름

변수 이름 : 메모리 주소에 붙여진 이름

  • 프로그램은 변수 이름을 통해서 메모리 주소에 접근하여 그곳에 값을 저장하거나 그곳에 있는 값을 읽음
  • 변수 이름은 자바 언어에서 정한 명명 규칙 (naming convention)을 따라야 함
  • 변수 이름을 보고, 이 변수가 어떤 값을 저장하고 있는지 쉽게 알 수 있도록 의미 있는 변수 이름을 지어야 함
  • 관례란 필수적인 것은 아니지만 개발자 간의 코드 작성 패턴을 공유하고자 하는 약속이기 때문에 지키는 것이 좋음
작성 규칙
첫 번째 글자는 문자이거나 '$', '_' 이어야 하고
숫자로 시작할 수 없다. (필수)
가능 : price, $price, _name
안 됨 : 1pv, @ speed, $#value
공백이 포함되면 안 된다. (필수) 안 됨: company Name
영어 대소문자가 구분된다. (필수) addSum와 addsum은 다른 변수
첫 문자는 영어 소문자로 시작하되,
다른 단어가 붙을 경우 첫 문자를 대문자로 한다. (관례)
maxSpeed, firstName
문자 수(길이)의 제한은 없다.  
자바 예약어는 사용할 수 없다. (필수)  

 

2.2 예약어

예약어들로 변수 이름을 지정하면 컴파일 에러가 발생하기 때문에 주의가 필요함

분류 예약어
기본 데이터 타입 boolean, byte, char, short, int, long, float, double
접근 지정자 private, protected, public
클래스와 관련된 것 class, abstract, interface, extends, implements, enum
객체와 관련된 것 new, instanceof, this, super, null
메소드와 관련된 것 void, return
제어문과 관련된 것 if, else, switch, case, default, for, do, while, break, continue
논리 값 true, false
예외 처리와 관련된 것 try, catch, finally, throw, throws
기타 transient, volatile, package, import, synchronized, native, final, static, strictfp, assert