본문 바로가기
IT_Developers/JAVA

JAVA - new 생성자란? / 인스턴스 생성

by 고코더 2020. 3. 14.

자바에서 사용하는 NEW를 알아봅니다. 


안녕하세요.
고코더 입니다.


자바 언어의 특징중 new를 사용해 메모리를 할당하는 기능이 있습니다. 힙(Heap) 영역에 저장할 공간을 할당해서 참조 값을 객체에게 반환하여 주는 것 입니다. 잘 아시다시피 메모리는 스택(stack)과 힙(heap) 영역으로 나누어져 있습니다. 스택은 정적이라면 힙은 참조형입니다. 큰 용량을 차지하며 해체 하기전까지 삭제되지 않습니다. 자바에서 가비지컬렉션은 힙 영역을 정리하는 역할을 합니다.


좀 더 자세히 알아봅니다.


 좀 더 자세히 알아볼까요? 이미지로 표현하면 이렇습니다. 



 해당 그림을 보면서 순서대로 알아보겠습니다.

1. GocoderClass 라는 타입으로 gc라는 객체를 선언합니다. 
2. new 를 사용하여 GocoderClass()를 힙(Heap) 영역에 할당 합니다. 
3. 생성된 객체의 참조값을 객체에게 반환합니다. 즉 gc에게 반환합니다.


예제소스


1
2
3
4
5
public static void main(String[] args) {
    GocoderClass gc = null// 객체를 선언합니다. 
    gc= new GocoderClass();   // 인스턴스를 생성하여 
    System.out.println(gc); // 참조 값이 출력 됩니다. 
}
cs




마무리


new는 자바 언어의 큰 특징 중 하나입니다.


댓글