Whiteship's Note

'@SuppressWarning("unchecked")'에 해당되는 글 1건

  1. 2010.03.29 EJ2E Item 24. unchecked 경고를 제거하자 (1)

EJ2E Item 24. unchecked 경고를 제거하자

Java : 2010. 3. 29. 16:16


참조: Effective Java 2nd Edition. Item 24: Eliminate unchecked warnings

Set<Lark> exaltation = new HashSet();

다음과 같은 코드는 컴파일 시 unchecked 경고를 발생시킨다. 

Set<Lark> exaltation = new HashSet<Lark>();

이렇게 수정하면 경고가 사라진다. 가능한 모든 unchecked 경고를 없애자. 모든 경고를 제거했다면 코드의 타입 안전성을 확보하는 것이다. 즉 실행시에 ClassCastException을 보지 않을 것이다.

만약 경고를 없앨 수 없지만 타입 안전성을 확신한다면 @SupressWarnings("unchecked") 애노테이션을 사용하여 경고를 무시할 수 있다.

SupressWarning 애노테이션을 사용할 때는 항상 최소 단위에 적용하도록 하자. 만약 클래스위에 붙여버리면 @_@.. 메서드에 붙여도 @_@. 메서드 내부에 코드가 많다면 그 중 어디선가 또 다른 타입 안전성 문제가 발생할 수 있다. 메서드 내부에 변수를 만들고 해당 변수에다가 붙이자. 단 한 줄짜리 메서드라면 뭐.. 

SupressWarning 애노테이션을 사용할 때마다 왜 타입 안전성이 보장되는지 주석을 달아두도록 하자. 그래야 다른 사람들도 이해할 수 있다.

요약: 경고는 중요하다. 무시하지 말자. 모든 unchecked 경고는 잠재적으로 런타임시의 ClassCastException에 해당한다. 이 경고들을 없애는데 주력하자. 만약 없앨 수 없지만 타입 안전성을 확신한다면 가장 최소한의 규모에 @SuppressWarning("unchecked") 애노테이션을 붙이자. 그리고 그렇게 결정한 이유를 주석으로 남기자.
 
top

  1. Favicon of http://www.moncleroutletespain.com/ BlogIcon http://www.moncleroutletespain.com/ 2013.01.04 12:19 PERM. MOD/DEL REPLY

    Muttahida Qaumi Movement (MQM), http://www.moncleroutletespain.com/ moncler españa, la deuxième composante de la coalition gouvernementale pakistanaise, http://www.moncleroutletespain.com/ http://www.moncleroutletespain.com/, a annoncé dimanche qu'elle rejoignait l'opposition après la démission de deux de ses ministres, http://www.moncleroutletespain.com/ moncler, aggravant la crise que conna, http://www.moncleroutletespain.com/ moncler online?t l'impopulaire gouvernement de Yousuf Raza Gilani, http://www.moncleroutletespain.com/ moncler chaquetas.Related articles:


    http://shoggoth.tistory.com/166 http://shoggoth.tistory.com/166

    http://marxpino.tistory.com/123 http://marxpino.tistory.com/123

Write a comment.