Replies: 1 comment 1 reply
-
원시 타입 적용자바의 generic은 컴파일 타임에만 타입 정보를 활용하고, 런타임에는 타입 정보를 제거합니다. 컴파일러는 generic 코드를 타입-안전하게 확인하고, 런타임에 일반적인 Object 타입으로 변환합니다. 예를 들어) List<Integer> list = new ArrayList<>();
list.add(10); 컴파일 후에 실제로는 아래와 같이 변환됩니다. List list = new ArrayList();
list.add(10); 즉 컴파일러는 타입 체크만 하고, 런타임에는 Object로 처리합니다. 원시 타입은 스택 메모리에 값을 직접 저장하며, Object처럼 참조되지 않습니다. 따라서 원시타입은 Object를 대체할 수 없기에 컴파일 에러가 발생합니다. Wrapper Class를 사용하는 대안도 존재하므로, 원시 타입을 지원하지 않습니다. static 변수generic은 컴파일 시점에만 타입 정보를 확인하고, 런타임에는 타입 정보가 제거됩니다. |
Beta Was this translation helpful? Give feedback.
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
.
Beta Was this translation helpful? Give feedback.
All reactions