inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

(2026 최신!) 일주일만에 합격하는 정보처리기사 실기

생성자와 메서드

자바 상속(부모, 자식)

해결된 질문

46

dhkdxo12

작성한 질문수 37

0

생성자와 메서드 8:49

 

상속 관련하여 알려주고 있는데 해당 코드 관련해서 자식이 태어나려면 부모꺼를 먼저 호출하라고 들었습니다.

 

호출 답 관련해서 상세하게 설명요청드립니다.

어떤 것은 부모 호출을 먼저한 뒤 자식을 호출하고

어떤 것은 부모 호출 없이 자식만 호출하는 것 차이를 모르겠습니다.

python java c 정보처리기사 정보처리산업기사

답변 2

0

주말코딩

안녕하세요, 질문하신 부분의 new ElectricCar() 부분부터 순서대로 설명드리겠습니다.

우선 생성자에서 생각하실 것은 Java에서 그 어떤 객체가 태어날 때라도 부모의 클래스가 한 번 초기화 되어야 합니다.

 

이게 무슨 말이냐면, 부모의 생성자가 아예 없어도 "생략됐구나" 생각하시고 기본 생성자가 호출됐다고 생각하시면 됩니다.

 

지금 코드에서는 자식 클래스인 전기차의 생성자로 변수를 만들었습니다.

그 변수가 객체인 myElectricCar죠.

 

여기서 순서는 이렇습니다.

ElectricCar() 생성자 진입
  → Java가 자동으로 super() 삽입 → Car() 생성자 호출
    → "Car created" 출력
  → 그 다음 ElectricCar 본문 실행
    → "Electric Car created" 출력

생성자는 부모가 먼저 태어나야하기 때문에 지금 기준으로는 Car() 안에 있는 내용을 읽으시면 됩니다.

자식생성자 첫 줄에 우리가 보이지 않은 super()가 생략되어 있다고 보면 됩니다. Java 컴파일러가 자동으로 넣어줍니다.

 

"자식만 호출됨" <- 이 경우는 없습니다.

만약에 그렇게 보인다면, 부모에 기본 생성자가 없어보여서 그렇고

그것은 부모 기본 생성자를 실행은 했는데, 내용이 없으니까 출력값이 없어서 그렇게 보이는 것입니다.

 

혹시나 이와 관련하여 헷갈리는 예제가 있으면 아래 대댓글로 다시 질문 부탁드립니다.

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다. dhkdxo12님.

자바에서 상속과 생성자 호출과 관련된 혼란을 해소하는 데 도움을 드리겠습니다. 객체지향 프로그래밍에서는 부모 클래스와 자식 클래스의 생성자 호출 순서를 이해하는 것이 매우 중요합니다.

생성자 호출 순서

  1. 자식 객체 생성 시:

    • 자식 클래스의 객체를 생성할 때, 자바는 부모 클래스의 생성자를 먼저 호출합니다. 이 과정은 부모 클래스에 정의된 속성과 메서드가 적절히 초기화된 후에, 자식 클래스의 고유한 속성과 메서드가 초기화되기 때문입니다. 따라서 자식 객체가 생성될 때는 기본적으로 super()가 호출되어 부모 클래스를 먼저 초기화하는 셈입니다.
  2. 명시적 호출과 암묵적 호출:

    • 만약 자식 클래스의 생성자에 super()가 명시적으로 존재하지 않더라도, 자바는 자동으로 부모의 기본 생성자를 호출합니다. 이는 자식 클래스가 부모 클래스의 특성을 상속받는 데 필수적인 과정입니다.
  3. 호출 순서의 예외:

    • 부모의 생성자 호출 없이 자식의 생성자를 직접 호출하는 경우는 없습니다. 이는 자바 언어의 특성상 불가능하며, 자식 객체가 생성될 때 항상 부모의 초기화가 선행되어야 합니다.

관련 자료

만약 위 설명이 흥미롭거나 더 알고 싶으신 부분이 있다면, 강의 내의 다른 질문도 한 번 살펴보시면 이해에 도움이 될 것입니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

필기자료 사라졌나요?(실기 일주일만에 안돼서 재도전-_-)

0

59

2

26년 1회 실기 해설 강의

0

78

2

53번 4-1 자료 오류 있는 것 같습니다.

0

76

2

7번문제

0

63

2

C언어 변형문제 9번문제 Pdf 수정요청

0

51

2

메서드 오버드라드

0

55

2

실수

0

46

1

공부 우선순위 우선강의 알려주세요

0

94

1

생성자 호출순서 강의 10번 문제 30분대 질문입니다

0

52

2

25년 2회 기출 5:40 질문입니다.

0

43

2

모의고사1회 3번 파이썬문제

0

76

2

C언어 출제변형 6번 문제

0

50

2

c언어 출제변형 강의 질문

0

32

2

28:40

0

34

2

C :  언어 배열과  문자열 수업자료

0

31

2

파이썬 리스트, 딕셔너리 질문

0

43

2

모의고사 관련 질문 건

1

69

3

자료 내용 오류

0

65

2

정적 변수, 정적 메서드(static) v2

0

51

2

v1.2 와 v0.91 PDF

0

104

1

업캐스팅 (부모형태, 자식생성자)

0

53

2

정보처리산업기사 준비중입니다.

0

74

2

실기 D -6

0

105

2

(기출) 2024년 2회 기출문제 - 이론 포함 22분32초 질문입니다

0

63

3