TestEx 객체 생성 시 생성자 호출 질문
안녕하세요. 강의를 듣던 중 생성자 호출 결과와 관련해 궁금한 점이 생겨 질문드립니다.
해당 예제에서 new 연산자 사용 시 다중 정의된 int 타입 파라미터를 받는 생성자가 호출된다고 설명해 주셨는데, 그 이유가 궁금합니다.
new 연산자에 int 타입 매개변수를 전달한 상황을 가정하고 설명하신 것일까요?
강의와 유튜브 항상 잘 보고 있습니다. 감사합니다.
Answer 2
0
안녕하세요, 인프런 AI 인턴입니다.
cola1886님, 오브젝트 생성 및 생성자 호출과 관련한 궁금증에 대해 답변 드리겠습니다.
Java에서 객체를 생성할 때, new 키워드를 사용하여 클래스의 인스턴스를 만듭니다. new 연산자는 해당 클래스의 생성자를 호출하게 되며, 이때 전달된 매개변수 유형에 따라 적절한 생성자가 선택됩니다. 다중 정의된(오버로딩된) 생성자 중에서 int 타입 매개변수를 받는 생성자가 호출되는 것은 전달된 매개변수가 int 타입일 때 일어납니다.
생성자는 클래스 내에서 객체 생성 시 특정 초기화 작업을 담당하며, 여러 개의 생성자를 정의할 수 있습니다. 즉, 같은 이름의 생성자가 여러 개 존재하되, 매개변수의 타입과 개수가 다를 때 이를 오버로딩이라고 합니다. 따라서 어떤 생성자가 호출될지는 객체 생성 시 제공된 매개변수의 타입과 개수에 따라 결정됩니다.
정확한 이해를 위해 다음과 같은 예시를 생각해볼 수 있습니다:
class TestEx {
TestEx() {
System.out.println("Default Constructor Called");
}
TestEx(int number) {
System.out.println("Constructor with int parameter called: " + number);
}
}
// Somewhere in your code where you create an instance
TestEx obj = new TestEx(5); // This will call the constructor with int parameter
위 코드에서는 TestEx(5)가 생성될 때 int 파라미터를 받는 생성자가 호출됩니다.
관련된 질문과 답변으로, 오버로딩된 생성자들 중 어떤 것이 왜 선택되는지에 대한 설명이 포함된 기존의 유사한 답변들을 확인하시면 좋습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
compareTo를 사용하는 이유가 뭔가요?
0
46
1
[실습] MyString에 복사 생성자 추가
0
38
1
안녕하세요~ 회수라는 의미에 대해서 질문합니다.
0
71
1
equals의 재정의(overriding)에 대해서
0
80
2
[MyString 실습 인스턴스 중복 생성 문의] MyString.setString(String param)
0
100
2
주소록 실습 3단계에서 막혔어서 조언을 구하려고 질문 드립니다.
0
85
2
해시 알고리즘 관련으로 질문이 있습니다.
0
73
2
21분 경 Old generation의 GC 설명 질문입니다.
0
102
3
임시 객체의 첫 번째 상황에 대한 질문
0
70
2
String 객체가 하나 더 생성되는 이유가 궁금합니다
0
190
3
하위 클래스와 상위 클래스의 생성자 순서
0
105
2
GC의 age와 관련하여 질문 있습니다.
0
97
2
Object Header 의 Klass word (39강 36:00)
0
115
2
method area는 이름이 class area가 아니고 왜 method aread인지 궁금합니다.
0
139
2
교안 p.305 'throw 필수' 질문
0
81
1
Metaspace에 대한 질문
0
258
2
clone() 메서드를 재정의함으로써 Deep copy로 구현한다로 이해하면 될까요?
0
120
2
MyListEx 질문드립니다.
1
136
1
part3 강의 개강
0
197
2
문자열 비교 강좌에서 문자열 선언 방법 간에 hashCode() 값 관련한 질문입니다.
0
222
2
상속과 오지랖의 콜라보 예제에서 clone() 메서드에 대한 문의드립니다.
1
182
2
보이지 않는 임시 객체의 자막 수정 요청
0
116
2
스레드 관련해서 질문이 있습니다.
0
203
1
metaspace 관련 문의드립니다.
0
199
2

