본문 바로가기

프로그래밍/Java

인스턴스 생성과 힙 메모리

인스턴스 (instance)

클래스는 객체의 속성과 기능을 구현하여 만들어 놓은 설계도이다.
실제 클래스 기반으로 생성된 객체(인스턴스)는 각각 다른 멤버 변수 값을 가지게 된다.
new 키워드를 사용하여 인스턴스를 생성한다.

힙 메모리

생성된 인스턴스는 동적 메모리에 할당된다.
하나의 클래스로부터 여러 개의 인스턴스가 생성되고 각각 다른 메모리 주소를 가지게 된다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
package ch01;
 
public class MainTest4 {
 
    // 코드의 시작점
    public static void main(String[] args) {
 
        int n1;
        int n2 = 100;
        Student studentPack = new Student();
        studentPack.studentId = 1;
        
    } // end of main
 
// end of class
cs

→ 스택 메모리 (LIFO) : 후입선출 방식으로, 밑에서부터 쌓아 올라가고 위에서 아래로 하나씩 꺼내는 방식이다.
Student클래스의 객체를 new 연산자를 이용해 studentPack 인스턴스가 생성이 되면 힙에 메모리가 올라가게 되고 주소값을 가진다.

→ 기본 데이터 타입은 값(리터럴)이 출력이 되고, 참조 타입은 주소값이 출력이 된다. (참조타입의 값을 참조하지 않은 공간은 초기값으로 출력됨)



'프로그래밍 > Java' 카테고리의 다른 글

Java_생성자  (0) 2023.02.07
Java_함수(function)  (0) 2023.02.06
Java_객체 지향 언어  (0) 2023.02.05
Java_반복문 for 문과 while 문  (0) 2023.02.05
Java_조건문 if 문  (0) 2023.02.05