super 질문

임대진·2022년 3월 12일
0

기본생성자에서 다른 생성자를 호출할 경우에는 그 기본생성자 안에서 왜 super()를 만들지 못하는가?

Object 클래스를 제외한 모든 클래스의 생성자의 첫줄에는 반드시 자신의 클래스의 또다른 생성자, this() 또는 부모 클래스의 생성자, super()를 호출해줘야 합니다. 이렇게 하지 않으면 컴파일러가 자동으로 super()를 생성자의 첫줄에 호출합니다.

출처: https://freestrokes.tistory.com/72 [FREESTROKES DEVLOG]

왜 기본생성자에서 다른 매개변수가 있는 생성자를 호출하는가?

this()란

  • 현재 클래스에 정의된 생성자를 부를때 사용

this() 사용예제

  • 아래와 같이 ParentClass의 생성자가 2개 있을 경우, 생성자 값이 들어오지 않을 경우 this()메소드를 사용하여 두번째 생성자를 불러 초기화 할 수 있습니다.

출처:https://pathas.tistory.com/134
출처:https://ithub.tistory.com/66

profile
신입개발자 공부기록 블로그

0개의 댓글