이는 any 타입과 매우 흡사하지만 차이점이 있다.
제너릭 타입은 다양한 타입을 받을 수 있다는 유연성이란 점에서 any 타입과 흡사하지만 타입의 정보가 동적으로 결정된다는 차이가 있다.
any 타입이 아닌 제너릭('< T >')을 사용하였다.
identity2 함수의 반환 타입도 T로 설정하였다.
이 결과 숫자(1)을 넣었을 때 그 인자의 타입이 T로 설정된다.
따라서 문자열 메서드인 split() 사용에 오류를 감지한다.
제너릭은 any 타입과 마찬가지로 다양한 유형을 받을 수 있다.
idetitiy2()의 인자로 이번엔 문자열('gExample')을 전달하였다.(유연성)
전달한 문자열에 따라 제너릭 T의 유형이 문자열로 설정된다.
따라서 문자열 메서드인 split() 사용에 문제가 없다.