• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    미해결

new 생성자로 만드는 기계어 코드가 실제로 할당되는 메모리가 궁금합니다.

20.01.25 18:51 작성 조회수 102

1

b는 메모리 주소값을 저장하는 포인터고

실제 기계어 코드는 메써드 영역에 논스태틱 영역에 저장된다고 하셨는데

만약에 BookDTO객체를 b,c 등 두개를 만들면

논스태틱영역에 객체 기계어 코드가 두개가 생기는 건가요?

힙 메모리 영역에는 포인터만 저장되어 있고 실제 값이 있는 메모리는 논스태틱 영역에 할당된다고 이해했는데

그러면 new 로 여러개 만들어도 결국 같은 곳에 있는 기계어 코드를 가르킨다는 말인건지 

논스태틱영역에 기계어 코드가 계속 생성된다는 얘기인건지 햇갈려서 질문 드립니다.

답변 1

답변을 작성해보세요.

1

휴일인데도 열공하시네요^^

질문하신 맨 아래처럼 알고 계시면됩니다.

new연산자로 객체를 여러개 생성하더라도 기계어코드는 계속 새롭게 논스태틱영역에 생성이 된다고 보시면됩니다. 그러면 당연히 힙영역에는 서로 다른 메모리 주소를 가리키구요.

다른 문의사항있으시면 또 글 남겨주세요.