본문 바로가기

자바☕

자바 표준 Annotation

728x90

1. Overriding

- 오버라이딩을 올바르게 했는지 컴파일러의 체크 요구

ex)

class Parent {
	void parentMethod() {}
}

class Child extends Parent {
	void parentmethod() {} // 컴파일러 : 오버라이딩이 아닌 새로운 메서드를 추가하는 것으로 인식
}

 

2. Deprecated

- 사용하지 않는 것을 권장하는 필드나 메서드에 사용

ex) Date 클래스의 getDate()

 

3. FuntionalInterface

- 함수형 인터페이스에 붙이면 컴파일러가 올바르게 작성했는지 체크

- 함수형 인터페이스는 하나의 추상메서드만 가져야 한다

 

4. SuppressWarnings

- 컴파일러의 경고메세지를 나타나지 않게 하고 싶을 때

ex)

@SuppressWarnings("unchecked") // 제너릭스 관련 경고 억제
ArrayList list = new ArrayList(); // 제너릭 타입을 지정하지 않음
list.add(obj); // 경고발생하지만, 어노테이션으로 인해 보이지 않음
// + 둘 이상의 경고를 억제하고 싶을 때, 경고를 배열처럼 중괄호로 묶는다

 

728x90