반응형
목표
- 자바의 프리미티브 타입, 변수 그리고 배열을 사용하는 방법을 익힙니다.
학습할 것
- 프리미티브 타입 종류와 값의 범위 그리고 기본 값
- 프리미티브 타입과 레퍼런스 타입
- 리터럴
- 변수 선언 및 초기화하는 방법
- 변수의 스코프와 라이프타임
- 타입 변환, 캐스팅 그리고 타입 프로모션
- 1차 및 2차 배열 선언하기
- 타입 추론, var
참고 자료
* 공부의 목적으로 위 블로그를 참고해서 정리했습니다.
타입 추론이란?
- 변수의 타입을 명시적으로 적어주지 않아도, 컴파일러가 알아서 이 변수의 타입을 대입된 리터럴로 추론하는 것
- 대표적인 타입 추론 언어는 자바스크립트, 코틀린, 스위프트 등이 있다.
- 컴파일 시점에, 컴파일러가 오른쪽에 있는 초기화 값 리터럴로 타입을 추론한다.
instanceof(객체 타입을 확인하는 연산자)를 통해 str2의 변수 타입이 String인지 체크해봤습니다.
컴파일 시점에, 컴파일러가 오른쪽에 있는 초기화 값 리터럴로 타입을 추론합니다.
그래서 str2의 타입이 String으로 선언되어 "str2 변수의 타입은 String입니다" 출력되었습니다.
Var는 키워드(KeyWord)가 아니다
- var는 키워드가 아니다.
=> 어떠한 타입도 아니고, 클래스에서 사용할 수 있는 예약어가 아니다.
=> 그래서 우리가 int를 변수 이름으로 만들 수는 없지만, var라는 문자를 변수로 사용 가능하다.
위 사진과 같이 해도 에러가 발생하지 않는다.
Var는 런타임 오버헤드가 없다.
- 자바스크립트와 같은 언어들은 let으로 선언되 변수를 중간에 다른 값으로 변경할 수 있다.
ex) let number = 10; => number = "Hello!!"; - 하지만 자바에서는 컴파일단에서 에러가 발생한다.
Var의 잘못된 사용법
1. Var는 초기화없이 사용할 수 없다.
2. Var 타입 변수에는 null 값이 들어갈 수 없다.
3. Var 타입은 로컬 변수에만 선언이 가능하다.
반응형