[자바] Type Erasure란 무엇인가?

프로그래밍/자바2021. 3. 25. 16:03

자바에서 Type Erasure란 generic의 element type 정보를 컴파일 타임에만 조건을 확인하고 버려 런타임에는 element type 정보를 가지지 않는 것입니다.

 

왜 그렇게 하는가? 궁금증이 들어서 찾아봤습니다.

호환성 때문이라는 이야기도 있네요. 그런데 아래의 이야기가 맞지 않나 싶습니다.

(stackoverflow.com/a/21840800/7225691)

 

During the execution of a program, there should be no need for type information - this has already been verified by the compiler. 

 

컴파일러 타임에 generic의 element type을 다 검증했기에 runtime에는 이러한 정보가 필요가 없는 것이죠.

 

 

참고

www.baeldung.com/java-type-erasure

 

Type Erasure in Java Explained | Baeldung

In this article, we'll discuss an important mechanism in Java's generics known as type erasure. We'll see where and when the Java compiler enforces type erasure.

www.baeldung.com

blog.naver.com/whydda/222256874318

 

[Java] 제네릭 타입 이레이저(Type Erasure)

● Type Erasur 란?​▷ 자바에서는 제네릭 클래스를 인스턴스화 할때 해당 타입을 지워버린다. 그 타입...

blog.naver.com

docs.oracle.com/javase/tutorial/java/generics/erasure.html

 

Type Erasure (The Java™ Tutorials > Learning the Java Language > Generics (Updated))

The Java Tutorials have been written for JDK 8. Examples and practices described in this page don't take advantage of improvements introduced in later releases and might use technology no longer available. See Java Language Changes for a summary of updated

docs.oracle.com

 

작성자

Posted by 드리머즈

관련 글

댓글 영역