• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    미해결

userV2 객체 생성 시 오류

22.03.01 20:49 작성 조회수 258

1

java: constructor UserV2 in class com.example.restfulwebservice.user.UserV2 cannot be applied to given types;

  required: java.lang.String

  found:    no arguments

  reason: actual and formal argument lists differ in length

영상에서 나온 코드와 동일하게 UserV2 클래스를 작성한 후에 서버를 실행시켰습니다.

그런데 userV2 인스턴스를 생성하려니 위의 에러가 나왔습니다.

아마도 @AllArgsConstructor 어노테이션에 의해서 grade 속성이 포함된 생성자가 생긴 듯 했습니다.

그래서 @NoArgsConstructor 어노테이션을 UserV2에 추가해줘서 문제를 해결하였습니다.

근데 저의 의문점은' 왜 영상에서는 오류 없이 실행된 것인가?'입니다. 

스프링부트 버전이 달라서 그런것일까요?

현재 저는 스프링부트 2.6.3을 사용하고 있습니다.

혹시나 다른 이유가 있다면 설명 부탁드립니다!

감사합니다. 

답변 1

답변을 작성해보세요.

0

안녕하세요, 이도원입니다. 

UserV2 클래스에 기본 생성자를 선언하지는 않았지만, 부모 클래스인 User 클래스에 @NoArgsConstructor 어노테이션을 추가하였습니다. UserV2 클래스가 User 클래스를 상속 받았는지와 User 클래스에 @NoArgsConstructor 어노테이션이 추가되었는지 확인해 보시기 바랍니다. 

감사합니다.