강의

멘토링

로드맵

Inflearn brand logo image

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

진우님의 프로필 이미지
진우

작성한 질문수

김영한의 실전 자바 - 중급 1편

불변 객체 - 값 변경

상속 오버라이딩 질문

작성

·

44

0



[질문 내용]
여기에 질문 내용을 남겨주세요.

 

7:36에서 obj1, obj2를 출력하는데, obj1, obj2의 객체 정보가 출력이 되었는데,

이유가

 

메인메서드 처음부분에, obj1과 obj2의 객체가 만들어 지는데, 이때 obj1의 객체 안에는(obj1, Object)클래스 정보가들어있고 obj2객체 안에는(obj2, Object)클래스정보가 들어있는데

 

System.out.println()메서드 안에 객체를 넣으면 내부에서 자동적으로 객체명.toString()메서드가 실행이 되는데, 자식클래스(obj1, obj2)모두가 toString()을 오버라이딩 하지 않아, Object의 toString()이 호출이 되는데, 호출하는 변수가 각각 obj1, obj2여서 호출하는 변수 타입의 객체 정보가 출력이 된다. 맞나요? 잠시 헷갈렸는데 맞을까여?

답변 1

0

안녕하세요. 진우님, 공식 서포터즈 y2gcoder입니다.

네 말씀하신 것이 맞습니다. toString()을 재정의해주지 않았다면 모든 객체 인스턴스의 최상위 타입인 Object에 있는 toString() 을 호출하게 됩니다.

감사합니다.

진우님의 프로필 이미지
진우

작성한 질문수

질문하기