생성자뒤에 붙는 this에 관해 질문드립니다
317
작성한 질문수 3

생성자 뒤에 this가 붙을 경우
이전 생성자를 불러와 실행한 뒤
본 생성자를 실행하는 것으로 이해했습니다.
제가 이해한 방식대로 생각했을 때
Kni3.mp의 값이 정해지는 순서가
1.this생성자(3번째) : 이전 생성자에서 hp,att,mp값 불러옴
2.this생성자(2번째) : 이전 생성자에서 hp,att,mp값 불러옴
3. this생성자(2번째): hp값 = 미입력, mp값 = 33
4.this생성자(3번째) : hp,att값 = 입력값 , mp값 = 33
Kni3.mp = 33이 나와야 한다고 생각했지만
디버깅해보니
Kni3.mp = 3 이 나와서 헷갈리기 시작했습니다.
생성자 뒤에 this가 붙을 경우
"이전 생성자"를 불러오는게 아닌
"기본 생성자"에서 정해진 값만 불러오고
정해지지 않은 값은 0으로 불러오는 건가요?
답변 1
5
안녕하세요,
우선 스스로 이런 저런 테스트를 하신다니 훌륭한 학습 방법이라고 생각됩니다.
질문주신 부분에 대해 답변 드리자면, 생성자에서 사용하는 this()를 그냥 함수 호출이라고 생각하시면 됩니다.
함수도 오버로딩 된 여러 버전 중에서, 인자 형식/개수가 일치하는 쪽을 선택하는데, 생성자도 별반 다르지 않습니다.
따라서 말씀하신 this()는 무조건 기본 생성자를 호출하고,
위의 예제에서 int 1개짜리 버전을 선택하려면 아래와 같이 this 안에 인자를 넣어주시면 됩니다.
Generic에 대한 질문 있습니다.
0
97
2
2022 버전에 커뮤니티 버전이 없는데 2026 버전으로 해도 무관?
0
203
2
다형성 캐시 문제
0
115
3
.
0
71
1
프로퍼티 강의 질문 있습니다.
0
79
1
이후 커리 질문
0
87
1
static
0
91
2
강의에는 새로운 클래스 파일을 생성하면...
0
72
1
생성자의 이름 선언
0
66
1
9:03 Divide(10 , 3) 부분 질문입니다
0
90
1
깃허브 관련 질문 있습니다.
0
240
1
비쥬얼 스튜디오 업데이트가 된건가요..? 매개변수 오류 관련 질문
0
249
1
C# 시리즈 || C++ 시리즈 자료구조 강의에 대한 질문입니다!
0
306
2
Activator 질문있습니다
0
333
1
이넘 타임 선언 질문
0
349
1
Sort 오름차순, 내림차순
0
323
1
질문 있습니다.
0
250
1
팩토리얼 문제
0
272
1
Sort함수 질문있습니다.
0
266
1
다형성 함수 질문 있습니다.
0
221
1
질문이 있습니다.
0
230
1
섹션2 연습문제 질문입니다.
0
215
1
안녕하세요~서버에 대해 질문이 있습니다.
1
284
1
텍스트 색깔이 제 편집기와 달라서 수강에 어려움이 있습니다ㅜㅜ
0
397
1





