반응형
이왕이면 제네릭 타입으로 만들라
-
Item 29. 이왕이면 제네릭 타입으로 만들라Book/Effective Java 3E 2022. 11. 12. 10:30
Item 7의 스택 코드는 제네릭 타입이어야 마땅합니다. 제네릭으로 바꾼다고 해도 현재 버전을 사용하는 클라이언트에는 아무런 해가 없습니다. 오히려 지금 상태에서의 클라이언트는 스택에서 꺼낸 객체를 형변환해야 하는데, 이때 런타임 오류가날 위험이 있습니다. 일반 클래스를 제네릭 클래스로 만드는 첫 단계는 클래스 선언에 타입 매개변수를 추가하는 일입니다. 이때 타입 이름으로는 보통 E를 사용합니다(Item 68). 그런 다음 Object를 적절한 타입 매개변수로 바꾸고 컴파일해봅시다. 이 단계에서 대체로 하나 이상의 오류나 경고가 발생합니다(Stack 클래스 생성자 부분: elements = new E[DEFAULT_INITIAL_CAPACITY];). E와 같은 실체화 불가 타입으로는 배열을 만들 수 없..