Spring

Spring ) Java Spring @Override annotation 이란? @Override 사용법

Albosa2lol 2023. 7. 19. 09:24

Java Spring 프레임워크에서 @Override 어노테이션은 메서드 재정의(Overriding)를 명시적으로 선언하는 데 사용됩니다. 메서드 재정의는 상위 클래스(부모 클래스)에 이미 정의된 메서드를 하위 클래스(자식 클래스)에서 다시 정의하여 동일한 메서드 시그니처(메서드 이름, 매개변수, 반환 타입)를 가진 새로운 구현을 제공하는 것을 말합니다.

Java에서는 상속을 통해 클래스 계층 구조를 형성할 수 있습니다. 상위 클래스에는 기본적인 동작이 정의되어 있으며, 하위 클래스는 상위 클래스의 메서드를 재정의하여 필요한 동작을 변경하거나 추가할 수 있습니다.

@Override 어노테이션은 다음과 같은 목적을 가지고 사용됩니다:

  1. 문법적 오류 방지: 상위 클래스에 해당 메서드가 존재하지 않거나 시그니처가 잘못되어 상속되지 않는 경우, @Override 어노테이션을 사용하면 컴파일러가 해당 메서드가 실제로 재정의되어야 한다는 것을 검사하여 오류를 방지합니다.
  2. 코드 가독성 증가: @Override 어노테이션을 사용함으로써 메서드가 재정의되었음을 명확히 알 수 있으므로 코드의 가독성이 향상됩니다.
class Animal {
    void makeSound() {
        System.out.println("Animal makes a sound.");
    }
}

class Dog extends Animal {
    @Override
    void makeSound() {
        System.out.println("Dog barks.");
    }
}

위의 예제에서 Dog 클래스는 Animal 클래스를 상속하고 있으며, makeSound() 메서드를 재정의하고 있습니다. @Override 어노테이션이 없더라도 컴파일은 될 수 있지만, 가독성과 안정성을 위해 명시적으로 @Override 어노테이션을 사용하는 것이 권장됩니다.

'Spring' 카테고리의 다른 글

Spring ) Blacklist  (0) 2023.07.19
Spring ) Spring Security 구현 순서  (0) 2023.07.19
Spring ) @Id, @Column, @GeneratedValue, @Entity, @Table  (0) 2023.07.14
Spring ) DI, IoC 정리  (0) 2023.07.14
Spring ) AOP (Aspect Oriented Programming)란?  (0) 2023.07.13