새내기 사원 3일차.. 공부와 다른 현업의 벽에 좌절을 하며 구글링이 생활화 되버렸다...
물론 겉 핥기 식으로 배웠던 것도 있어서 그런 것 같다..ㅠㅠㅠ 하나씩 채우자~!!
기존에 했던 플젝 소스를 보는데 @SuppressWarings 라는 어노테이션이 있어서
뭘까...싶어 구글링을 했지만.. 여전히 잘 모르겠다..
내용은 대충 느낌이 오지만 실제 적용하는 상황이 감이 안 잡힌다..? 라는 느낌..
그래도 까먹지 않게 기록하려고 한다!!
@SuppressWarnings를 사용하여 경고 제외
: JDK 1.5버전부터 지원한다고 하며, 컴파일러에게 오류가 아니라고 알려주는 역할.
즉 IDE로 작업하다보면 나오는 노란 밑줄경고를 보기 싫을 때 사용하는 것 같다 (아마도..?ㅎㅎ)
적용법은 해당 메소드 위에 어노테이션 작성!
@SuppressWarnings("rawtypes") : 하나만 적용할 경우
@SuppressWarnings({"cast", "unchecked"}) : 두개 이상 적용할 경우
종류
- all 모든 경고를 억제합니다.
- boxing boxing/unboxing 오퍼레이션과 관련된 경고를 억제합니다.
- cast 캐스트 오퍼레이션과 관련된 경고를 억제합니다.
- dep-ann 권장되지 않는 어노테이션과 관련된 경고를 억제합니다.
- deprecation 권장되지 않는 기능과 관련된 경고를 억제합니다.
- fallthrough switch 문에서 누락된 break 문과 관련된 경고를 억제합니다.
- finally 리턴되지 않는 마지막 블록과 관련된 경고를 억제합니다.
- hiding 변수를 숨기는 로컬과 관련된 경고를 억제합니다.
- incomplete-switch switch 문에서 누락된 항목과 관련된 경고를 억제합니다(enum case).
- javadoc javadoc 경고와 관련된 경고를 억제합니다.
- nls 비nls 문자열 리터럴과 관련된 경고를 억제합니다.
- null 널(null) 분석과 관련된 경고를 억제합니다.
- rawtypes 원시 유형 사용법과 관련된 경고를 억제합니다.
- resource 닫기 가능 유형의 자원 사용에 관련된 경고 억제
- restriction 올바르지 않거나 금지된 참조 사용법과 관련된 경고를 억제합니다.
- serial 직렬화 가능 클래스에 대한 누락된 serialVersionUID 필드와 관련된 경고를 억제합니다.
- static-access 잘못된 정적 액세스와 관련된 경고를 억제합니다.
- static-method static으로 선언될 수 있는 메소드와 관련된 경고를 억제합니다.
- super 수퍼 호출을 사용하지 않는 메소드 겹쳐쓰기와 관련된 경고를 억제합니다.
- synthetic-access 내부 클래스로부터의 최적화되지 않은 액세스와 관련된 경고를 억제합니다.
- sync-override 동기화된 메소드를 오버라이드하는 경우 누락된 동기화로 인한 경고 억제
- unchecked 미확인 오퍼레이션과 관련된 경고를 억제합니다.
- unqualified-field-access 규정되지 않은 필드 액세스와 관련된 경고를 억제합니다.
- unused 사용하지 않은 코드 및 불필요한 코드와 관련된 경고를 억제합니다.
주의사항
: 해당 어노테이션을 사용하는 경우, 어떤 의도를 가지고 사용했는지 주석 필요.
(=> 플젝 소스보면서도 느낀점. 왜 썼는지, 안 써도 되는건지 주석이 없어서 아직도 이해가 가지 않고 있다...ㅠㅠ..)
: 경고를 무시하는 거라서 잘 생각해보고 써야한다. 또한 무시하는 범위 역시 얼마나 제한할 것인지 고려.
참고
'Java & JSP' 카테고리의 다른 글
IE 9에서 input태그 file 에러 이슈, input태그 accecpt, multiple 지원 버전 (0) | 2020.03.10 |
---|---|
EL & JSTL (0) | 2019.06.02 |
Java Generic & Collection Framework(제네릭&콜렉션 프레임워크) (0) | 2019.05.22 |
댓글