본문 바로가기
공부/이펙티브자바

[이펙티브자바]item 29.이왕이면 제네릭 타입으로 만들라.

by 띵커베르 2023. 2. 13.
728x90
  • 배열을 사용하는 코드를 제네릭으로 만들때 해결 책 두가지가 있다.
    • 첫번째 방법은 제네릭 배열 대신에 Object 배열을 생성한 뒤에 제네릭 배열로 형변환 하는것.
      • 형변환을 배열 생성시 한 번만 한다.
      • 가독성이 좋다.
      • 힙 오염이 발생할 수 있다(아이템31)
    • 두번째 방법은 elements 필드의 타입을 E[] 에서 Object[]로 바꾸는 것이다.
      • 제네릭 배열 대신에 Object 배열을 사용하고, 배열이 반환한 원소를 E로 형변환 하는것.
      • 원소를 꺼낼때 마다 형변환을 해주어야 한다.
    • 필요에 따라 한정적 타입 매개변수를 이용해서 제약조건을 추가하자. E extends Number> 같은..
728x90

댓글