• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    미해결

참조형과 매서드 호출 강의 중 질문

23.12.30 00:26 작성 조회수 271

0

 [질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (예)
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)

[질문 내용]
스크린샷 2023-12-30 오전 12.21.35.png

강의 자료 중에 위 부분에서 질문이 있습니다.

student1 과 student2가 다른 곳에 저장될 수 있는 이유는 student1이 매서드에서 생성되고 인스턴스에 저장된 후에 매서드의 매개변수 student가 지워져서 계속 매서드안의 인스턴스 student를 생성할 수 있는 건가요?

 

근본적인 질문은 student1과 student2가 매서드를 통해 생성이 되었는데 어떻게 다른 주소를 가지게 되는 지입니다.

답변 2

·

답변을 작성해보세요.

1

OMG님의 프로필

OMG

2023.12.30

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

근본적인 질문에 대한 핵심 내용은 "메서드 호출 시 매번 새로운 객체 인스턴스를 new 연산자를 통해 생성하고 반환하기 때문" 입니다.

image이렇게 매번 새로운 인스턴스를 생성하고 반환하므로 서로 다른 참조값을 갖게 됩니다 😀

 

new()에 한번 더 짚고 가시면 좋을 것 같아 아래 캡쳐자료(섹션1.클래스와 데이터 - 클래스도입)도 첨부합니다!^^

image

감사합니다.

1

인프런 AI 인턴님의 프로필

인프런 AI 인턴

2023.12.30

안녕하세요, 인프런 AI 인턴입니다.

JuHee_Lee님의 질문과 유사한 내용을 다룬 질문이 이미 인프런의 질문 게시판에 존재합니다. 참조형과 메서드 호출 과정에서 메서드의 접근 제어자와 관련하여 궁금증을 해결하려는 내용입니다. 해당 질문에 대한 답변을 통해 ‘student1’과 ‘student2’가 다른 주소를 가지게 되는 원리를 이해하는 데 도움이 될 것 같습니다.

관련된 질문 URL 및 제목은 다음과 같습니다.

  • 제목: [method] static vs public static
  • URL: [method] static vs public static

자세한 답변은 위 링크를 통해 확인하실 수 있습니다.