GENERIC

Java

Java Generic 딥 다이브

Generic과 함께하는 가장 대표적인 warning부터 보고 시작하겠습니다 List 대신 List 형태로 바로 사용하고 있는데요 Warning unchecked Generic을 이용해 타입 지정을 했지만, 실제 추론 가능한 타입은 Object일 때 사용됩니다 Object를 Generic에 의해서 제공된 타입의 정보로 캐스팅할 때 발생합니다 list.get(index)를 하는 결과는 Object타입이지만, 이를 (T) 형태로 캐스팅할 수 있는지 여부를 확인하지 못하고 변환했기에 발생한 예외입니다 rawtypes List를 List 형태로 작성하지 않고, List 형태로 사용했기 때문에 컴파일러가 타입추론을 할 수 없다는 경고를 하고 있습니다 List 를 제대로 적어준다면, 발생하지 않는 경고입니다 런타임..

Java

Generics 시작하기

Generic 을 왜 사용하기 시작했을까요? 이 질문에 대해서 알아보기 위해서 글을 작성했습니다 Generic 이 없었을 때는 어땠을까요? Generic 이 없이 작성된 과거의 코드를 가져와보도록 하겠습니다 실제로 작성할 수 있는데요 문제가 되는 상황이 2가지나 보이는데요 1. String을 직접 꺼내도 String이 나오지 않고, Object 형태로 나와서 캐스팅을 하지 않는다면 컴파일 에러가 발생하게 됩니다 2. String 만 들어있을 것으로 기대되는 ArrayList 에 int 값을 넣으려고 시도해도 에러가 발생하지 않습니다 실제로 그 위치까지 가서 String으로 변환을 시도했을 때 런타임에 ClassCastException 이 발생합니다 이를 generic으로 해결할 수 있습니다 실제로 int..

be-student
'GENERIC' 태그의 글 목록