Spring의 XML 구성을 사용하는 동안 객체를 컨텍스트에서 특정 유형으로 형변환하려고 시도할 때 오류가 발생할 수 있습니다. 아래 코드 조각에서:
private Map<String, String> someMap = new HashMap<String, String>();
someMap = (HashMap<String, String>)getApplicationContext().getBean("someMap");
Eclipse는 이를 경고와 함께 표시할 수 있습니다: "유형 안전: Object에서 HashMap
이 경고는 성능을 최적화하기 위해 런타임에 유형 정보를 제거하는 JVM(Java Virtual Machine)의 특성인 유형 삭제로 인해 발생합니다. 결과적으로 JVM은 런타임에 검색된 맵의 실제 유형을 확인할 수 없으므로 확인되지 않은 캐스트 경고가 발생합니다.
이 문제를 해결하려면 @SuppressWarnings( "unchecked") 주석은 코드 동작에 영향을 주지 않고 경고를 억제합니다. 그러나 캐스트가 안전하다고 확신하는 경우에만 드물게 사용하는 것이 중요합니다.
대체 솔루션은 런타임에 유형 정보를 보존하고 캐스트를 제거하는 기능인 구체화된 제네릭을 Java에서 캠페인하는 것입니다. 확인되지 않은 캐스트가 필요합니다.
부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.
Copyright© 2022 湘ICP备2022001581号-3