애너테이션
: 주석처럼, 프로그래밍 언어에 영향을 미치지 않으며, 유용한 정보를 제공
✔ 애니테이션의 사용 예
: J Unit에게 테스트 대상임을 알린다
@Test
public void method() {}
표준애너테이션
: 자바에서 제공하는 애너테이션
: 메타 에너테이션은 애너테이션을 만들때 사용하는 애너테이션
@Override
: 오버라이딩을 올바르게 했는지, 컴파일러가 체크하게 한다.
: javac.exe 시점
: 오버라이딩할때는 메서드 선언부 앞에 @Override를 붙이자
class Child extends Parent {
void parentmethod(){} // parentMethod()를 써야하는데 소문자로 오타가 남
class Child extends Parent{
@Override
void parentmethod(){} // method does not override 로 애너테이션이 에러문장을 알려줌
@Deprecated
:앞으로 사용하지 않을 것을 권장하는 필드나 메서드에 붙인다
: @Deprecated 의 사용 예, Date 클래스의 getDate()
@Deprecated
public int getDate(){
return normalize().getDayOfMonth(); } // getDate()의 자바 api문서에 표시가 됨
@FuntionalInterface
: 함수형 인터페이스에 붙이면, 컴파일러가 올바르게 작성했는지 체크
: 함수형 인터페이스에는 하나의 추상메서드만 가져야 한다는 제약이 있음
@SuppressWarnings
: 컴파일러 경고메세지가 나타나지 않게 억제한다.
: 괄호()안에 억제하고자하는 경고종류를 문자열로 지정
: 둘 이상의 경고를 동시에 억제할시에는 다음과 같이 입력
: cmd창에서 컴파일할때 에러가 뜨면 세부내용 확인.
소스파일에서 @surpressWarnings로 해당 문구를 확인했다고 처리.컴파일시 경고가 안뜨도록 해야함
👉 경고 = 잠재적 위험이라 새로운 경고인지 기존 경고인지 파악이 어려우므로 그때그때 정리하는 용도
'🔥 Vamos > Java' 카테고리의 다른 글
1111 | 자바의 정석 기초편 :: ch13-1~13-6 (0) | 2022.11.11 |
---|---|
1110 | 자바의 정석 기초편 :: ch12-29~12-37 (1) | 2022.11.10 |
1109 | 자바의 정석 기초편 :: ch12-15~12-22 (1) | 2022.11.09 |
1108 | 자바의 정석 기초편 :: ch12-9~12-14 (1) | 2022.11.08 |
1108 | 자바의 정석 기초편 :: ch12-4~12-8 (1) | 2022.11.08 |