작성
·
205
0
이번 강의의 마지막까지 따라했는데요,
조금 이해가 안되는 부분이 있어서 질문드립니다.
강의 마지막에 보면 저렇게 base안에 _name _height _age 들이 들어가 있고,
부모가 되는 Human 클래스의 생성자에 있던 _name 등의 이름은 전부 수정한 상태입니다.
제가 이해하기엔 부모 생성자에서 언더바가 빠졌으니 base안에서 오류가 나야 하지 않을까 했는데 코드가 잘 돌아가서 그 부분이 이해가 되질 않습니다. 실제로 저도 해보니까 잘 되구요.
혹시 언더바가 단순 이름을 구분해주는 기능이 아니라 다른 기능이 있는 걸까요?
만약 그게 아니라면 부모 생성자에서 언더바가 빠졌는데 언더바로 적은 코드가 오류가 없는 이유는 뭘까요?
답변 1
0
안녕하세요 안상현님!
일단 인수에 적은 언더바는 단순 이름 구분을 위한 언더바가 맞습니다! this.name과 인수 name을 구분하기 위해 사용된 언더바에요!
그리고 인수의 이름은 그 함수 내에서만 유효합니다. 즉, base를 이용하여 생성자를 호출할 때 인수의 이름은 name을 써야하는 것이 아니고, name 인수 안에 들어갈 값 (_name)을 입력해준 것입니다.
감사합니다 :)