JUST GO

[공통] 변수와 상수 본문

Java/학습내용

[공통] 변수와 상수

root_go 2022. 10. 11. 12:15

변수와 상수

  • 변수(Variable)은 변할 수 있는 수로, 크게 세 가지로 구분 된다.
    • 지역 변수(Local Variable)
      • 지역 변수는 메서드 내부에 선언되어 있는 변수를 의미한다.
      • 지역 변수는 값이 초기화되어 있지 않으면 값 대입을 제외한 그 어떤 접근도 할 수 없다.
      • 동일한 스코프 혹은 보다 상위 스코프의 실행 기점이 보다 과거인 변수에만 접근할 수 있다.
      • 매개변수를 포함하여 (접근가능한 것들 중에) 이미 사용중인 이름을 다시 사용하여 선언할 수 없다.
      • 명명법 : 카멜 케이스
      • 구조
[타입] [변수 이름];

혹은

[타입] [변수 이름] = [초기 값];

가령, 초기 값이 10인 정수형 변수 ten을 선언하려면 아래와 같이 작성한다.

int ten = 10;
  • 멤버 변수(Member Variable)
    • 멤버 변수는 클래스 내부에 선언되어 있는 변수를 의미한다.
    • 명명법 : 카멜케이스
    • 구조
[접근 제한자] final [static]? [타입] [이름];

혹은

[접근 제한자] final [static]? [타입] [이름] = [값];
  • 매개 변수(Parameter)
    • 매개 변수는 메서드의 매개 변수 구조에 선언되어 있는 변수를 의미한다.
    • 선언 방법은 일반 지역 변수 선언과 그 방식이 동일하다.
    • 명명법 : 카멜케이스
    • 구조
[final]? [타입] [이름]
  • 상수(Constant)는 존재하지 않는다. 읽기 전용(Read Only)만 있을 뿐. 그런데 편의상 상수라고들 함.
    • 멤버 상수(Constant Member)
      • 멤버 상수의 값은 선언과 동시에  초기화를 하거나 생성자(Constructor)를 통해 초기화해 주어야만 한다.
      • 명명법 : 카멜 케이스 
      • 구조
[접근 제한자] final [타입] [이름];

 혹은

[접근 제한자] final [타입] [이름] = [값];
  • 정적인 멤버 상수(Static Constant Member)
    • 정적인 멤버 상수의 값은 선언과 동시에 초기화를 하거나 정적 생성자(Static Constructor)를 통해 초기화해 주어야만 한다.
    • 명명법 : 어퍼 스네이크 케이스
    • 구조
[접근 제한자] static final [타입] [이름];

혹은

[접근 제한자] static final [타입] [이름] = [값];
  • 지역 상수(Local Final)
    • 지역 상수는 해당 상수에 값이 최초로 대입된 뒤로는 값을 변경할 수 없다. 단, 반드시 선언과 동시에 값을 초기화해야 하는 것은 아니다.
    • 명명법 : 카멜 케이스
    • 구조
[final] [타입] [변수 이름];
final double pi = 3.14;
pi = 3.141592; // 오류가 발생한다.

 

'Java > 학습내용' 카테고리의 다른 글

[공통] 연산자  (0) 2022.10.12
[공통] 타입  (0) 2022.10.11
[공통] 메서드  (0) 2022.10.11
[공통] 클래스  (0) 2022.10.11
[공통] Java  (1) 2022.10.11