자바 - 변수
변수(variabla)란?
변수란, 하나의 값을 저장할 수 있는 메모리 공간을 말한다.
자바의 변수는 다양한 타입의 값을 저장할 수 없고, 하나의 값만 저장 가능하다.
(실수형 변수에는 실수 값만, 정수형 변수에는 정수 값만 저장할 수 있다는 뜻)
그리고 저장된 값은 변할 수 있다.
변수 선언과 초기화
변수를 사용하려면 변수 선언을 해야한다. 변수 선언은 어떤 타입의 데이터를 저장할 것인지
그리고 변수의 이름을 결정하는 것이다.
타입 변수이름; ex) int number;
변수는 타입 변수이름; 의 형태로 선언한다. 예를 들어 int number; 이렇게 선언했다면 int타입의 number라는
이름을 가진 변수를 선언한 것이다.
선언한 변수에는 타입에 맞는 값을 저장할 수 있다.
int number;
number = 3;
이렇게 하면 number라는 변수에 3이라는 값을 저장했다. 이때 최초로 지정해준 3이라는 값을
변수의 초깃값이라고 하며, 변숫값을 한다.
선언된 number 변수에 3이라는 초깃값을 초기화한 것이다.
이렇게 변수를 선언한 뒤 초기화 할 수도 있지만, 동시에 할수도 있다.
int number = 3;
이렇게 변수를 선언하며 동시에 초기화도 가능하다. 대게는 이렇게 선언과 동시에 초기화하여 사용하는 것 같다.
그리고 같은 타입의 여러 변수를 동시에 선언하며 초기화할 수 있다.
int num1 = 9; num2 = 6; num3 = 4;
이렇게 int 타입의 변수 num1, num2, num3을 동시에 선언하며 초기화할 수 있다.
만약 선언하고자 하는 변수의 타입이 서로 다르면 동시에 선언할 수 없다!
변수 명명 규칙
변수의 이름을 지을 때에는 자바 언어에서 정한 명명 규칙을 따라야 한다.
작성 규칙 | 예시 |
첫 번째 글자는 문자이거나 '$'(달러), '_'(언더바)이어야 하고 숫자로 시작할 수 없다. (필수) | 가능 : number, $number, _number 불가능 : 1g, @speed, $#value |
영어 대소문자가 구분된다. (필수) | studyclass와 studyClass 는 다른 변수이다 |
첫 문자는 영어 소문자로 시작하되, 다른 단어가 붙을 경우 첫 문자를 대문자로 한다. (관례) | maxSpeed, studyClass, carBodyColor (낙타등 표기법) |
문자 수(길이)의 제한은 없다. | |
자바 예약어는 사용할 수 없다. (필수) |
필수 항목을 어기고 변수 이름을 지으면, 에러가 뜬다. 하지만 관례를 어겼다고 해서 에러가 뜨지는 않는다.
다만 개발자들 사이에서의 암묵적인 룰이기 때문에 지키는 게 좋다.
다른 단어가 붙을 때 첫 문자를 대문자로 하는 표기를 낙타 등 표기법이라고 한다.
사진 출처 : 위키백과
자바 예약어는 다음과 같다.
분류 | 예약어 |
기본 데이터 타입 | boolean, byte, char, short, int, long, floast, 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 |
앞으로 많이 사용될 예약어들이다. 이 예약어들로 변수 이름을 지정하면 에러가 발생한다.
개발자는 변수 이름을 보고, 이 변수가 어떤 값을 저장하고 있는지 쉽게 알 수 있도록 의미 있는 변수 이름을 지어주는 것이 좋다. 길어도 상관없다. 그리고 한글은 사용할 수 있지만, 사용 안 하는 것이 좋다. 누군가 한글을 모르는 사람이 소스 코드를
볼 수 있기 때문이다.
부족한 점, 잘못된 점이 있다면 지적 부탁드립니다. 피드백은 언제나 환영입니다.