제네릭은 Java SE 1.5의 새로운 기능입니다. "Java Core Technology"의 제네릭 정의는 다음과 같습니다.
"제네릭"은 다음과 같습니다. 다양한 유형의 객체에서 재사용할 수 있는 코드 작성.
더 재사용 가능한 코드를 작성하기 위해 제네릭이 제안된 것을 볼 수 있습니다.
제네릭의 본질은 매개변수화된 유형입니다. 즉, 연산되는 데이터 유형이 매개변수로 지정된다는 의미입니다.
예를 들어 공통 컬렉션 클래스 LinkedList:
public class LinkedList<E> extends AbstractSequentialList<E> implements List<E>, Deque<E>, Queue<E>, Cloneable, Serializable { //... transient Link<E> voidLink; //...
보시다시피 LinkedList1a4db2c2c2313771e5742b6debf617a1 그 구현 뒤에는 특수 부분 ""이 오고 해당 멤버 Link1a4db2c2c2313771e5742b6debf617a1의 유형에도 ""가 포함되어 있습니다. 새로운 LinkedList로, 멤버에 저장된 유형도 String입니다.
사실 제네릭 도입의 주요 목표는 다음과 같습니다.
● 유형 안전성 #🎜 🎜#
제네릭의 주요 목표는 Java 프로그램의 유형 안전성을 향상시키는 것입니다잘못된 Java 유형으로 인한 ClassCastException 예외는 컴파일 중에 확인할 수 있습니다Conforming The 오류가 발생할수록 비용이 줄어듭니다.● 강제 유형 변환 제거
제네릭의 부수적인 이점은 바로 오류를 얻을 수 있다는 것입니다. 사용할 때 대상 유형을 지정하고 많은 캐스트를 제거합니다필요한 결과를 얻으므로 코드를 더 쉽게 읽을 수 있고 오류 가능성이 줄어듭니다● 잠재적인 성능 향상 #🎜 🎜# 제네릭 지원에는 구현 방식으로 인해 JVM 또는 클래스 파일 변경이 거의 필요하지 않습니다.
모든 작업은 컴파일러
컴파일러에서 생성된 코드는 제네릭(및 캐스트)을 사용하지 않고 작성된 코드와 거의 동일하지만 유형이 더 안전합니다
위 내용은 Java 제네릭을 이해하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!