인프런 커뮤니티 질문&답변

고도윤님의 프로필 이미지

작성한 질문수

김영한의 실전 자바 - 기본편

스택 영역과 힙 영역

작성

·

169

0

스택 영역과 힙 영역에서 궁금한게 생겨 질문 남깁니다!

 

스크린샷 2024-03-20 오후 4.16.48.png스크린샷 2024-03-20 오후 4.16.50.png지금 Main 클래스에서 17번째줄에 있는 Data data2 를
Data data2 = new Data(); 이렇게 작성하면 안되는건가요?

답변 1

0

안녕하세요. 고도윤님, 공식 서포터즈 OMG입니다.

image

올리신 질문 내용이

 

image

해당 코드를

static void method2(Data data2 = new Data();) {

이렇게 변경하려는 걸까요?

이는 자바 문법 상 지원하지 않습니다.

감사합니다.

고도윤님의 프로필 이미지
고도윤
질문자

엇 아닙니다. 제가 말을 잘못했네요ㅜㅜ!

12 번쨰 줄의 코드 처럼 작성을 해도 되는지 여쭤본 것이였습니다.

static void method2(){

Data data2 = new Data2();

 

이렇게요!!!

질문은 그렇다면 생성자 관련 질문으로 보는게 맞을 것 같습니다 😀


image

다음 코드의 사용자 정의 생성자로 인해

public Data(int value) { 
    this.value = value;
}

 

기본생성자를 정의하지 않을 경우 컴파일 오류가 발생합니다 ^^

public Data() { 
}

그런데, 설명드린 대로 변경한다면 method2();가 아닌 method2(data1);로 한다면 메서드에 인자를 전달하고 있어서 이 부분은 또 함수와 관련된 내용도 포함되네요.

image

스택 영역과 힙 영역에 대해서 질문을 남겨주셨는데, 답변을 드리려면 더 구체적으로 질문을 풀어 서 설명해주시겠어요? 강의 영상 어느 부분을 수강하고 생긴 궁금증인지 , 그리고 코드도

생성자와 함수 관련된 내용은 해결이 되고 , 스택영역과 힙영역 관점에서 답변을 드릴 수 있을 것 같아요 😀