인프런 커뮤니티 질문&답변

옙버디님의 프로필 이미지
옙버디

작성한 질문수

김영한의 실전 자바 - 기본편

메서드 관련 질문

해결된 질문

작성

·

143

0

현재 상속 파트를 공부하다가 든 의문증입니다.

상위 클래스에서 void 타입의 메서드명 : call() { System.out.println("이름 : " +name);}

하위 클래스에서 void 타입 메서드명 : GetInfo()

GetInfo(){

out.println("호출명 : " + call());

[해당 부분이 컴파일 오류가 발생하여서 상위 클래스 타입을 String으로 바꾸니 컴파일 오류도 없었고 원하는대로 출력이 되었습니다.]

그래서 생각을 좀 해봤는데 void는 반환값이 없는 메서드이고 GetInfo()에 출력문을 만나면 이중출력문이 되어서 컴파일 오류가 난 것이라고 생각했는데 맞나요..?

답변 1

0

안녕하세요. 옙버디님, 공식 서포터즈 OMG입니다.

반환 타입이 void일 때는 출력문에서 인자로 문자열과 함께 '+' 로 이어져서 호출할 수 없습니다.

image

또한 반환 타입이 void라면 System.out.println()으로 호출이 불가능합니다.

image

감사합니다.

옙버디님의 프로필 이미지
옙버디

작성한 질문수

질문하기