inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

Do it! 자바 프로그래밍 입문 with 은종쌤

인터페이스 선언과 구현하기(1)

9:35 implements 선언할때

165

2403docB

작성한 질문수 11

0

public class Calculator implements Calc{

라고 선언할때 Calc만 빨간줄이 쳐지고, 

@Override

public int add(int num1, int num2) {

return 0;

}

라고 적으면 add(int num1, int num2)에 빨간줄이 쳐지면서, The method add(int, int) of type Calculator must override or implement a supertype method

라고 오류가 뜹니다.

java

답변 1

1

김현지

안녕하세요, super mint님!

자바 컴파일러 버전 문제인 것 같습니다.

jdk 1.5에서 @Override는 추상 함수와 interface만 사용이 가능합니다.

구현되어있는 함수를 override해서 사용하는 경우는 에러처리를 합니다.

jdk 1.6에서는 단순히 override를 하는 경우에도 에러처리를 하지 않습니다.

이를 변경하는 방법은 아래와 같습니다.

  • Window - Preference (또는 Project Properties) 를 클릭
  • Java - Compiler 선택
  • Compiler Compliance Level이 1.5로 되어있을 때 에러가 발생합니다.
    Compiler Compliance Level을 1.6 이상으로 바꾸어주세요.

혹시 궁금하신 점이 있다면 댓글 남겨주세요.

도움이 되었으면 좋겠습니다. :)

0

이채형

안녕하세요 강의 듣다가 저도 같은 오류가 나서 현지님의 답변대로 해봤습니다. 그런데 compiler compliance level 이  이미 1.6 이더라고요. 이건 왜 이러는 걸까요?

이클립스 활성화가 안되는부분이있어요ㅜㅜ

0

434

1

책에 자료실

0

497

1

StudentID

0

559

1

인터페이스와 가상 메서드

0

356

1

11분쯤 price, int price 질문

0

352

1

For문 (중첩된 반복문) 구구단 문의 드립니다.

0

789

1

반복문 별 출력 연습문제

0

393

1

비트 연산자 질문입니다.

1

373

1

Scheduler scheduler = null 굳이 하는 이유가 있나요

1

335

0

Class간의 연결

1

295

1

선생님 스킬

0

398

1

초기화 에러!!!

0

285

1

선생님 영상에서 목소리가 좀 작은 것 같습니다 ㅠㅠ

2

302

0

출력

2

232

0

Main 함수 저번 강의 거가 나와요

0

317

1

결과값오류

1

225

0

printIn 함수 질문

0

453

1

24분 57초에 질문 있습니다!!

0

362

1

1분36초쯤에 말씀하시는 자바닥??그거 보라고 하셨는데 자바닥이 뭐죠..?

0

251

1

메서드와 생성자

0

396

2

참조형 데이터 타입은 클래스 이름과 같아야 하나요?

0

286

1

반환값은 정수 밖에 안되나요?

0

272

1

9분33초 설명!!부탁 드립니다!

0

299

1

48분쯤에 {"B","C","D""} 를 왜 {'B','C','D'}로 바꿨죠?

0

297

1