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

승승님의 프로필 이미지
승승

작성한 질문수

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

static 메서드3

인스턴스 메서드, 클래스 메서드의 생성 시기 차이

작성

·

525

0


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

[질문 내용]
안녕하세요, 자바의 메모리 구조 관련 강의를 보고 질문드립니다!인스턴스 메서드들은 인스턴스가 생성될 때마다 매번 메모리가 할당될 필요가 없기에 메서드 영역에 생성되는 것으로 이해했습니다. 정적 메서드 또한 정적이기에 메서드 영역에 할당되는 것으로 이해했습니다. 그렇다면 이 두 종류의 메서드 모두 메서드 영역에 메모리가 할당은 되는데, 생성되는 시점에 차이가 있는 걸까요?예를 들어서.. Student 라는 클래스가 있다고 가정하면, 해당 클래스의 첫 인스턴스가 생성되는 시점에 메서드 영역에 Student 클래스의 인스턴스 메서드들이 할당되는걸까요? 둘의 기능이나 의미상의 차이는 이해가 가는데, 메모리의 관점에서의 이해와 생성 시기의 차이가 이해되지 않는 것 같습니다.그리고 어디부터 어디까지가 클래스의 정보이기에 메서드 영역에 생성되는지 역시도 이해가 잘 가지 않습니다. JVM 로드 시에 메서드 영역에 할당되는 클래스의 정보에 인스턴스 메서드도 포함되는걸까요?제가 혹시 제대로 이해하지 못한 것이라면, 어떤 부분을 다시 들으면 좋을지도 알려주시면 정말 감사할 것 같습니다!

답변 2

1

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. 승승님

둘다 JVM 로드시에 메서드 영역에 만들어집니다 🙂

인스턴스 메서드는 인스턴스 생성시 메서드 영역에 만들어진 메서드를 연결해서 사용하는 것 뿐이지요.

도움이 되셨길 바래요 🙂

0

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

승승님의 질문에 대해 이미 비슷한 내용에 대한 답변이 있어 링크를 공유드리겠습니다. 자바 메모리 구조와 static 변수에 관한 질문에 강사님이 직접 답변한 내용이 도움이 될 것 같습니다.

  • 강의 제목: 김영한의 실전 자바 - 기본편
  • 답변 내용: static 변수는 메서드 영역에 저장되고, static이 참조하는 인스턴스는 힙 영역에 저장됩니다. 강의에서 설명드린 내용으로 이해하시면 됩니다.

이 답변이 인스턴스 메서드와 클래스 메서드의 생성 시기와 관련된 이해에 도움이 되길 바랍니다. 질문하신 내용과 직접적으로 연관된 부분을 참고하시면 좋을 것 같습니다.

감사합니다.

승승님의 프로필 이미지
승승

작성한 질문수

질문하기