- 컴파일러가 일반적으로 경고하는 내용 중 제외시킬때 쓰인다.(경고제외)


- 옵션

1. all : 모든 경고를 억제

2. cast : 캐스트연사자 관련 경고억제

3. dep-ann : 사용하지 말아야 할 주석관련 경고억제

4. deprecation : 사용하지 말아야 할 메서드관련 경고억제

5. fallthrough : switch 문에서의 break 누락관련 경고억제

6. finally : 반환하지 않는 finally 블럭관련 경고억제

7. null : null 분석관련 경고억제

8. rawtypes : 제네릭을 사용하는 클래스 매개변수가 불특정일때의 경고억제

9. unchecked : 검증되지 않은 연산자관련 경고억제

10. unused : 사용하지 않는 코드관련 경고억제


- 예 ) @SuppressWarnings("unchecked")

지역변수와 관련이 있는 건데.. 우선

예제)

<script>

// 함수 선언

function text(name) {

var output = 'Hello' + name + '...!';

}

// 출력

alert(output);

</script>

 

위의 예제 함수안에 있는 변수는 지역변수 이므로, 함수 외부에서 사용할 수 없습니다.(alert)

지역변수는 함수가 실행될때 생성되고 함수가 종료될 때 사라진다. 하지만, 클로저란? 것을 사용하면 이 규칙을 위반할 수 있다.

 

예제)

<script>

// 함수선언

function outerFunction(name) {

var output = 'Hello' + name + '...!';

return function() {

return output;

}

}

// 변수선언

var first = outerFunction('JavaScript');

var second = outerFunction('jQuery');

// 출력

alert(first);

alert(second);

</script>

 

이걸 가능하게 하려고 클로저 함수 사용

 

    // 숫자인지 체크
    public boolean isNumeric(String str) {

        Pattern pattern = Pattern.compile("[+-]?\\d+");
        return pattern.matcher(str).matches();
    }

 

+ Recent posts