변수란?
- 변수(Variable) : 변하는 수
- 타입이나 접시 비유가능
- 특정 타입의 데이터를 메모리상에 담을 수 있는 영역
- 객체의 주소를 저장할 수 있는 공간
- 정보를 저장할 수 있는 공간에 이름을 붙인것
- 값/메모리주소를 단 하나만 저장할 수 있는 메모리 공간
- 새로운 값을 저장하면 기존의 값은 새로운 값으로 변경
변수 선언
- 변수를 사용 한다고 컴파일러나 인터프리터에게 알리는것
※ 컴파일이란?
쉽게 말해서 컴퓨터에게 일을 시키기 위해서 사람의 말을 컴퓨터가 알아듣게 번역하는 것. 사람은 한국어,영어..등 자연어를 사용하지만 컴퓨터는 기계어만 이해할 수 있다.
다시말해 프로그래밍 언어로 작성한 코드를 기계가 알아듣게 다른 언어로 옮기는 작업을 컴파일,이러한 작업을 하는 프로그램을 컴파일러(compiler)라고 한다
변수 선언 방법
- 컴파일 : 데이터타입 또는 자료형 변수명
- 인터프리터 언어 : 변수명
- Java
아래에서 int 혹은 String이 데이터타입 또는 자료형을 뜻함.
n 혹은 s는 변수 명을 뜻함.
int n
String s
- Python, R
n
s
- JavaScript
var a;
let b;
const C;
데이터타입 또는 자료형
- 기본형(primitive type) 과 참조형(reference type)
- 기본형 : 실제 값(data)를 저장
- 참조형 : 주소(momory address) 값을 저장(C언처 처럼 참조형 변수 간 연산 불가)
- 기본형 8개를 제외한 나머지 타입
- 정수형 long형은 L 또는 l, 실수형 float 형에는 F 또는f 을 붙임
- 실수형은 정수형과 저장방식이 달라 같은 크기라도 큰 값 저장이 가능하나 오차가 존재
변수명 명명 규칙
- 식별자란 소스코드에서 사용되는 변수, 메소드, 클래스, 배열 등의 이름
- 식별자 명명 규칙 : 코딩 시 공통 적인 명명 규칙
- 영문자(대/소문자), 숫자, 특수문자(_), 한글(비추천) 사용
- 첫문자로 숫자 불가
- 공백 사용 불가
- 대/소문자 대부분의 프로그래밍 언어에서 구분 함
- 의미있는 단어로 작명하는 것이 좋음
- 각 언어의 키워드(예약어)는 사용 불가
Java 키워드(예약어)
abstract continue for new switch
assert default goto package synchronized
boolean do if private this
break double implements protected throw
byte else import public throws
case enum instanceof return transient
catch extends int short try
char final interface static void
class finally long strictfp volatile
const float native super while
변수명 규칙
- 클래스 : 첫문자 대문자, 두단어 합쳐지는 경우 두 번째 단어 첫단어도 대문자 : GameTest
- 멤버메소드(클래스 함수) : 소문자, 두단어 합쳐지는 경우 두 번째 단어 첫단어 대문자 : go(), getTime()
- 멤버변수(클래스 변수) : 소문자, 두단어 합쳐지는 경우 두 번째 단어 첫단어 대문자 : age, myName
- 함수, 변수 : 소문자, 두단어 합쳐지는 경우 _로 연결 : get_time(), my_name
- 상수 : 모든문자 대문자, 두단어 합쳐지는 경우 두 번째 단어 _로 연결 : PI, MAX_NUM
변수명 데이터 저장(할당, 대입)
- 변수 선언 후 데이터 할당
- 초기화 : 변수의 선언과 데이터 할당을 동시에 하는 것
- Java
int a = 3;
String b = "Hello";
변수를 사용 가능한 범위(Scope)에 따른 종류
- 전역 변수 : 모든 범위에서 사용 가능
- 지역 변수 : { 블럭 } 안에서만 사용 가능
변수를 저장되는 데이터타입에 따른 종류
- 일반 변수 : 일반적인 원시(기본) 데이터
- 참조 변수 : 객체의 주소 데이터
깃 허브 주소 : https://github.com/bjw5035/Academy_Study
'Programing > JAVA' 카테고리의 다른 글
제어문 - 반복문 LOOP (1) | 2022.02.23 |
---|---|
제어문 - 조건문 CONDITIONAL (1) | 2022.02.21 |
연산 (0) | 2022.02.21 |
변수 (0) | 2022.02.21 |
변수 (0) | 2021.04.01 |