728x90
VAR 정의
- 지역변수 선언시 초기값을 통하여 변수의 타입을 명시적으로 적지 않아도, 컴파일러가 알아서 변수의 타입을 대입된 데이터 타입을 추론하게 해줌 (JAVA 10부터 지원함)
VAR 특징
var word = "단어"; // String으로 추론
var number = 1; // int로 추론
var list = List.of(1, 2, 3) // List로 추론
- 형식 변수 선언 및 메서드 반환유형, 멤버 변수, 필드 선언, 생성자 형식 변수 및 다른 종류의 변수 선언에는 사용 불가
- 지역 변수 타입 추론할때 허용이 됨
- 람다 표현식에 사용 (자바 11에 해당)
VAR 사용시 주의사항
var number; // 초기 값 할당 없이 변수에 'var'를 사용불가
var list = null; // null 값은 사용불가
var output = (String word) -> System.out.println("word = " + word); // 명시적인 타입 지정
- var에는 변수에 null 값이 들어갈 수 없음
- 초기화 없이 사용 불가함 (명시적인 대상 유형이 필요함)
- 어떤 타입인지 정확하게 알 수 있는 경우에만 사용하는 것이 좋음
- 람다표현식에서는 명시적인 타입을 지정해야줘함
var는 컴파일시에만 타입 추론이 일어나고 컴파일 이후엔 타입이 변하지 않음 (런타임 오버헤드가 없음), 실무사용시 추론가능한 명시적이 대상에 사용하면 간결해서 편함
'JAVA' 카테고리의 다른 글
[JAVA] 메소드 레퍼런스 (0) | 2022.05.06 |
---|---|
[JAVA] REACTIVE STREAMS (0) | 2022.05.06 |
[JAVA] 하이버네이트(HIBERNATE) DDL-AUTO 옵션 정리 (0) | 2022.04.19 |
[JAVA] 어댑터 패턴 (0) | 2022.04.06 |
[JAVA] 비트연산자 (0) | 2022.02.06 |