본문 바로가기

프로그래밍/JAVA

[JAVA] 생성자 호출시, 제너릭 파라미터 타입을 타입 추론 vs 명시적 지정

(1) HashMap<String, String> a = new HashMap();  

(2) HashMap<String, String> a = new HashMap<String, String>();

 

(1) 에서는 제네릭 파라미터의 타입을 추론하여 사용하는 타입 추론(type inference)을 사용하고, (2) 에서는 제네릭 파라미터의 타입을 명시적으로 지정한다는 것입니다.

(1) 에서, Java는 할당 연산자의 왼쪽에 있는 변수의 타입에 기초하여 제네릭 파라미터의 타입(String, String)을 추론할 수 있기 때문에, 새 객체를 생성할 때 그것들을 반복할 필요가 없습니다.

이 두 구문 모두는 문자열 타입의 키를 문자열 타입의 값에 매핑하는 새로운 빈 HashMap 객체를 생성합니다.

 

출처 : GPT