본문 바로가기
Language/JAVA

[JAVA] 변수

by 아이엠제니 2021. 9. 9.

 


 

 

변수

  • 값을 저장할 수 있는 메모리의 공간
  • 변수에는 한 가지 타입의 값만 저장할 수 있음

 

 


변수 선언

  • 어떤 타입의 데이터를 저장할 것인지, 이름은 무엇인지를 결정
  • 같은 타입의 변수콤마(,)를 이용해서 한꺼번에 선언할 수도 있음
  • 변수 이름메모리 주소에 붙여진 이름
  • 프로그램은 변수 이름을 통해서 메모리 주소에 접근하고, 그곳에 값을 저장하거나 그곳에 있는 값을 읽음
int age; //정수(int)값을 저장할 수 있는 age 변수 선언

int = 타입
age = 변수이름

 

변수 이름은 자바 언어에서 정한 명명 규칙을 따라야 함

  • 첫 번째 글자는 문자이거나 '$', '_', 숫자 시작 ㄴㄴ
  • 영어 대소문자 구분(필수)
  • 첫 문자는 영어 소문자로 시작하되, 다른 단어 붙을 경우 첫 문자를 대문자로 함(관례)
  • 문자 수(길이) 제한 없음
  • 자바 예약어는 사용할 수 없음(필수) (기본 데이터 타입, 접근 지정자, 클래스와 관련된 것 등) - p.31 참고

 

 


변수값 저장

  • 변수에 값 저장할 때 대입 연산자(=) 사용 // 우측의 값을 좌측 변수에 저장한다는 의미
  • 변수를 선언하고 처음 값을 저장할 경우, 이러한 값을 초기값이라고 함
  • 변수에 초기값을 주는 행위를 변수의 초기화라고 함
int score; //변수 선언
score = 90; //값 저장

int score = 90; //초기값은 변수를 선언함과 동시에 줄 수도 있음
  • 소스 코드 내에서 직접 입력된 값을 리터럴(literal)이라고 부름 - p.33 참고
\t // 수평 탭
\n // 줄 바꿈
\r // 리턴
\" // 큰 따옴표
\' // 작은 따옴표
\\ // \
\u // 16진수에 해당하는 유니콛,

 

 


변수값 읽기

  • 변수는 초기화가 되어야 읽을 수 있음
package thisisjava.chap02.num01;

public class VariableExample {
    public static void main(String[] args) {
        int value = 10; //10을 변수 value의 초기값으로 저장
        //변수 value 값 읽고, 10을 더하는 산순 연산, 연산의 결과값 result 초기값으로 저장
        int result = value + 10;
        System.out.println(result); //변수 result 값을 읽고 콘솔에 출력
    }
}

출력

 

 


변수의 사용 범위

  • 변수는 중괄호 {} 블록  내에서 선언되고 사용
  • 중괄호 블록 사용하는 곳은 클래스, 생성자, 메소드
  • 메소드 블록 내에 선언된 변수 = 로컬 변수(locael variable)
    로컬 변수는 메소드 실행이 끝나면 메모리에서 자동으로 없어짐
public class Sample { //클래스 블록
    public static void main(String[] args) { //메소드블록
        int value = 10;
        int sum = value + 20;
        System.out.println(sum);
    }
}

> 변수는 선언된 블록 내에서만 사용이 가능

 

package thisisjava.chap02.num01;

public class VariableScopeExample {
    public static void main(String[] args) {
        int v1 = 15;
        if (v1 > 10) {
            int v2 = v2 - 10;
        }
        int v3 = v1 + v2 + 5; // 컴파일 에러
    }
}

> 제어문 블록에서 선언된 변수는 해당 제어문 블록 내에서만 사용이 가능하고 블록 밖에서는 사용할 수 없음

 

 

 

'이것이 자바다' 공부 기록
300x250