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 |