어노테이션이란?

@Test // method()가 테스트 대상임을 JUnit 단위테스트 프로그램에게 알린다. 
public void method(){
}

// @Test 어노테이션은 자체적인 프로그램에는 영향을 미치지 않으면서 method()가 테스트 대상임을 JUnit 단위 테스트 프로그램에 알린다.

표준 어노테이션

@Override

ex) 오탈자로 인해서 부모의 메서드를 상속받는 것이 아닌 새로운 메서드가 만들어지게 된다.

class Parent{
   void parentMethod(){}
}
class Child extends Parent{
   void parentmethod(){} // 오버라이딩하려 했으나 실수로 이름을 잘못적음
   // 새로운 메서드가 만들어진 것
}

// 오버라이딩시 메서드 선언부 앞에 @Override를 붙여 검사하면 이러한 문제를 방지할 수 있다.
class Child extends Parent{ 
   @Override
   void parentMethod(){ }
}

@Deprecated

@Deprecated // 사용 권장 x
public int getDate(){
   return normalize().getDayOfMonth();
}
Note: AnnotationTest.java uses or overrides a deprecated API.
Note: Recompile with -XLint:deprecation for details.

@FunctionalInterface