cs지식 정리하기/면접 대비

[7일차] 기술 면접 준비

젤리의it 2024. 3. 26. 21:33

1. JVM의 스택과 힙 메모리 영역에 대해 아는 만큼 설명해주실 수 있을까요?

스택과 힙 메모리는 Java 프로그램의 메모리 관리 영역입니다.
스택 메모리 (Stack Memory):- 
스택 메모리는 각 스레드마다 별도로 할당됩니다.
- 메서드 호출 시 호출 스택 프레임이 생성되며, 이 프레임에는 지역 변수와 메서드 호출 정보가 저장됩니다.
- 후입선출(LIFO) 구조로 동작하며, 메서드 실행이 완료되면 해당 스택 프레임이 제거됩니다.
- 주로 메서드 호출과 관련된 데이터를 저장하며 상대적으로 작은 크기를 가집니다.- 메모리 관리는 자동으로 이루어지며 개발자의 개입이 적습니다.

힙 메모리 (Heap Memory):
- 힙 메모리는 모든 스레드에서 공유되며, 동적으로 할당되는 객체와 배열을 저장하는 데 사용됩니다.
- 객체는 힙에서 생성되며, 스택 메모리에는 객체의 참조(Reference)가 저장됩니다.
- 가변 크기를 가지며, 가비지 컬렉션을 통해 더 이상 사용되지 않는 객체를 정리하고 메모리를 회수합니다.
- 대규모 데이터 구조를 저장하고, 동적 메모리 할당 및 해제가 가능하며 유연한 메모리 관리를 제공합니다.


2. 클래스와 인스턴스의 차이에 대해 설명해주실 수 있을까요?

클래스는 객체를 만들어 내기 위한 설계도 혹은 틀이라고 할 수 있으며, 연관되어 있는 변수와 메서드의 집합입니다. 인스턴스는 클래스를 바탕으로 구현된 구체적인 실체이며, 하나의 클래스를 통해서 다양한 인스턴스들을 만들 수 있습니다. 다양한 인스턴스가 만들어진다한들, 서로 다른 행동을 할 수 있게되니 재활용성을 더욱 높일 수 있습니다.

'cs지식 정리하기 > 면접 대비' 카테고리의 다른 글

[9일차] 기술 면접 준비  (0) 2024.04.02
[8일차] 기술 면접 준비  (0) 2024.03.27
[6일차] 기술 면접 준비  (0) 2024.03.25
[5일차] 기술 면접 준비  (0) 2024.03.20
[4일차] 기술 면접 준비  (0) 2024.03.19