Programming Language/Java

변수(Variable) (1) - 변수, 자료형, 명명규칙, 예약어

Ma_Sand 2022. 2. 17. 22:12
반응형

1. 변수(Variable)

   : 메모리(RAM)에 값을 기록하기 위한 공간

  - 변수 공간에 기록된 값(data)은 고정되어 있지 않고 다른 값이 기록되면 자동으로 덮어쓰기되어 변할 수 있다.

  - 기록이 저장되는 값의 종류에 따라 변수 공간의 자료형(Data Type)이 결정된다.

 

 

 

2. 변수에 값 기록 이유

   : 프로그램 실행 시 사용할 값(data)이 있다면 그 값은 먼저 메모리에 기록되어야 한다.

 

 

 

3. 변수의 사용 목적

 (1) 변수를 사용하지 않으면,

    System.out.println(2 * 3.141592653589793 * 10);
    System.out.println(3.141592653589793 * 10 * 10);
    System.out.println(3.141592653589793 * 10 * 10 * 20);

 

 (2) 변수를 사용하면,

double pi = 3.141592653589793;
int r = 10;
int h = 20;

    System.out.println(2 * pi * r);
    System.out.println(pi * r * r);
    System.out.println(pi * r * r * h);

   - 가독성이 좋아짐

   - 재사용성 증가로 인한 코드량 감소

   - 유지 보수에 용이

 

 

 

4. 변수의 선언

   : 메모리 공간에 데이터를 저장할 수 있는 공간을 할당하는 것

  - 형태: 자료형 변수명;

   * 자료형: 변수 타입 지정

     변수명: 변수명 지정

// 논리형 변수 선언            // 정수형 변수 선언
boolean isTrue;               byte bnum;
                              short snum;
                              int inum;
                              long lnum;
// 문자형 변수 선언
char ch;
 
// 문자열 변수 선언            // 실수형 변수 선언
String str;                   float fnum;
                              double dnum;

 

 

 

5. 자료형(Type)

 (1) 기본형(Primitive Data Type)

    - Java는 값(data)을 8개의 기본형으로 구분(boolean, char, byte, short, int, long, float, double)

    - Java 컴파일러에 의해서 해석되는 자료형

 

 (2) 기본 자료형의 종류

 

(3) 참조형(Reference Data Type)

   - 클래스를 사용자 정의 자료형이라고 한다.

   - 클래스를 자료형으로 하여 선언된 변수를 레퍼런스(Reference) 변수라고 한다.

   - 자유 메모리 영역인 Heap 메모리에 생성된 객체의 주소를 저장한다.

   - Java에서는 메모리 주소를 직접 소스코드로 참조하는 것은 불가능하다.

 

 

 

6. 데이터 저장 단위

  - 저장 공간이 제한적이기 때문에 저장 크기에 대한 기준과 CPU가 데이터를 처리할 때 일정한 기준이 필요하다.

 

 ▷ 비트(bit)

    : 컴퓨터가 나타내는 데이터의 저장 최소 단위로서 2진수 값 하나를 저장할 수 있는 메모리 공간

 ▷ 바이트(byte)

    : 데이터 처리 또는 문자의 최소 단위로서 8개의 비트가 모여 하나의 바이트를 구성

 

 

 

7. 데이터 오버플로우(Data Overflow)

  : Java에서 산술연산을 할 경우 해당 변수의 자료형의 표현 범위를 초과할 경우 쓰레기값이 발생되는 경우를 말한다.

 

 

 

8. 변수 선언 시 변수명 작성 규칙

  - 대소문자가 구분되며 길이에 제한이 없다.

  - 예약어(Keyword)를 사용하면 안된다.

      ex) true, final, String 등

  - 숫자로 시작하면 안된다.

      ex) number8은 가능, 8number은 불가능

  - 특수문자는 '_'와 '$'만 허용된다.

      ex) sh@rp는 불가능, $harp는 가능

    ** '_' 사용 시 컴파일 에러는 없지만 관례상 사용하지 않는 것이 좋다.

 

 ※ 일반적인 관례

   - 클래스 이름은 반드시 대문자로 시작한다.

        ex) Product, Manager, Member 등

   - 메소드(멤버 함수) 이름과 변수명은 소문자로 시작하며, 여러 단어를 합쳐서 의미가 부여된 이름으로 작성한다.

        ex) printMember, calculatorScore, setName, getAge 등

   - 상수변수 이름은 모두 대문자로 작성한다.

        ex) PI, SIZE 등

   - 여러 개의 단어가 이어져서 작성된 이름일 경우에는 낙타봉 표기법을 사용하여, 두 번째 단어 이후의 단어들은 첫 글자를 대문자로 한다.

        ex) toUpperCase, equalsEgnoreCase 등

   - 상수변수 이름이 여러 개의 단어로 구성될 경우에는 단어 간 구분에 '_'를 이용한다.

        ex) MAX_SIZE 등

 

 

 

9. 예약어(Keyword)

  : 해당 프로그램 언어의 필요에 의해서 기능이 이미 정해져 있는 단어들

 - Java 예약어는 모두 소문자로 대략 50여 개로 이루어져 있다.

 - 예약어는 변수명, 클래스명, 메소드명으로 사용할 수 없다.

 - 종류: abstract, assert, boolean, break, byte, case, catch, char, class, const, continue, default, do, double, else, enum, extends, false, final, finally, float, for, if, goto, implements, import, instanceof, int, interface, long, native, new, null, package, protected, public, return, short, static, strictfp, super, switch, synchronized, this, throw, throws, transient, true, try, void, volatile, while

반응형