@Override
어노테이션은 다음과 같은 두 가지 이유로 유용하게 사용됩니다.
- 어노테이션이 달린 메소드가 실제로 매소드 재정의하고 있지 않으면 철자가 틀린 경우처럼 컴파일러를 통해 경고 문구를 발생시킵니다.
- 메소드가 재정의되었음을 명확하게 나타내여 소스 코드의 가독성을 향상시킵니다.
규칙을 어긴 코드
class ParentClass {
public boolean doSomething(){...}
}
class FirstChildClass extends ParentClass {
public boolean doSomething(){...} // 규칙을 어긴 코드
}
규칙을 준수한 코드
class ParentClass {
public boolean doSomething(){...}
}
class FirstChildClass extends ParentClass {
@Override
public boolean doSomething(){...} // 규칙을 준수한 코드
}
예외
해당 규칙은 Objects
클래스의 tostring()
, hashCode()
를 재정의할때는 완화됩니다.
If you like SONARKUBE, don’t forget to give me a star.