구분 | 내용 | 생성 / 소멸 |
---|---|---|
Method Area 메소드 영역 | byte code, 리터럴(literal), 상수(fianl), static | 프로그램이 시작될 때 또는 클래스가 로딩될 때 생성 / 프로그램이 종료될 때 소멸 |
Heap 힙 | 객체(Object), 배열 | new 생성 시 생성 / reference가 끊기면 Garbage Collection에 의해 자동 소멸 |
Stack 스택 | 지역변수(local variable), 매개변수(argument) | 블럭 안에서 선언될 때 생성 / 블럭이 끝날 때 소멸 |
다른 언어(ex. C)에서는 가변 배열이 안되지만 Java에서는 가변 배열이 가능하다. 메모리 상에서 각각의 배열 객체가 개별적으로 생성되기 때문이다.
Python에서도 정수형에서의 가변 배열은 불가능하다.
public class Array {
public static void main(String[] args) {
int[][] arr = { // 가변 배열 arr
{1, 2},
{3, 4, 5, 6},
{6, 7, 8}
};
}
}
국비 과정에서 정보올림피아드 Language_Coder 파트 문제를 풀기 시작했다.
난이도가 굉장히 쉽기 때문에 주말 내로 간단하게 손 풀기 식으로 다 풀어야겠다.