Java

3.6.1 객체의 메모리 생성

by IT장인 posted Dec 28, 2013
?

단축키

Prev이전 문서

Next다음 문서

ESC닫기

크게 작게 위로 아래로 댓글로 가기 인쇄


3.6.1 객체의 메모리 생성

class라는 키워드로 우리는 새로운 데이터 타입을 하나 만들었다. 새로운 사용자 정의 데이터 타입으로 변수를 선언했으며, new 연산자와 생성자를 이용해서 메모리까지 만들었다. 메모리의 생성이란 데이터 타입에 해당하는 만큼의 메모리를 확보하는 일이다.

□ 클래스를 이용한 메모리의 생성
◇ 클래스 데이터 타입으로 변수를 선언하고, 컴퓨터 내의 메모리 속에 데이터 타입에 해당하는 만큼의 메모리를 확보하는 일   

메모리를 확보하기 위해서 우리는 new 연산자를 사용하고 무조건적으로 생성자를 호출해야 한다. 이러한 일련의 과정에서 일어나는 메모리의 변화에 대해서 좀 더 자세히 알아보자.

새로운 클래스를 하나 만드는 것은 새로운 데이터 타입을 만드는 것이다. 새로운 데이터 타입을 이용해서 변수를 만들었을 때 우리는 변수를 선언했다고 한다. 기본 데이터 타입 변수와 구별하기 위해서 클래스를 이용한 변수를 객체 또는 객체 변수라고 한다.

□ 객체(Object)
◇ 클래스로 변수를 만들었을 때 일반적인 기본 데이터 타입의 변수와 구별하기 위해서 객체 또는 객체 변수라고 한다.

하지만 객체 변수의 선언은 기존의 C 언어에서와 다른 의미를 담고 있다. 즉 객체의 이름을 하나 만든 것이지 아직 완전한 객체로서의 역할을 수행할 수 없다. 그럼, 언제 이용할 수 있는가라는 의문을 제기할 것이다.

□ new 연산자
◇ 객체의 메모리를 생성시켜 주는 역할을 담당   

▒ 이름만 가진 객체
 
Top t;

▒ 이름과 메모리를 가진 객체
 
Top t = new Top();

클래스는 객체 변수를 선언하고 new 연산자와 함께 생성자를 호출했을 때 완전한 객체가 만들어진다. new 연산자는 객체의 메모리를 생성시켜 주는 역할을 한다. 다른 말로 바꾸면 객체 변수가 제대로 된 역할을 할 수 있는 순간은 바로 객체의 메모리가 생성되었을 때이다.