Contents

Java
2013.11.22 20:43

2.2.3 메모리 생성 연산자

조회 수 361 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

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

단축키

Prev이전 문서

Next다음 문서

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


2.2.3 메모리 생성 연산자

구조체와 클래스의 차이점 중 메모리를 생성하는 방법의 차이에 대해서 알아보자. 구조체와 클래스는 메모리를 생성하는 방법에 있어서 차이점을 보이고 있다. 아주 기본적인 사항이지만 클래스를 이해하려고 한다면 결코 무시할 수는 없는 내용이다. 일단 구조체와 클래스의 메모리 생성이라는 측면에서 보자.

▒ 구조체의 선언과 메모리 생성
1
2
Person brother;
Person sister;

▒ 클래스의 선언과 메모리 생성
1
2
Person brother = new Person();
Person sister = new Person();

이 두 경우는 분명 메모리를 생성하는 방법이 다르다. 구조체에서는 선언만 해주었다. 하지만 클래스에서는 new 연산자와 생성자를 함께 명시해주고 있다. 자바의 클래스 개념에서는 반드시 new 연산자로 메모리를 생성하는 부분이 나와야 한다. 만약 Person brother과 같이 단순히 선언만 해준다면 절대 메모리는 생성되지 않는다. 이것이 기존의 C 언어의 구조체와 자바의 클래스에 대한 차이점이다.

□ 구조체의 메모리 생성
◇ 구조체는 변수의 선언과 동시에 메모리가 생성된다.

□ 기본 데이터 타입의 메모리 생성
◇ 기본 데이터 타입은 변수의 선언과 동시에 메모리가 생성된다.

그리고 자바에서는 클래스 변수의 메모리를 만들 때 반드시 생성자를 호출해야 한다. 이 생성자는 무조건적으로 반드시 호출하는 것을 원칙으로 한다. Person()이란 놈이 바로 생성자인데, 이 절에서는 생성자라고만 언급하고 앞으로 나올 장들에서 아주 심도 깊게 다루도록 하자. 정리를 해보면 new 연산자를 이용해서 메모리를 생성하고, 생성자를 이용해서 내부 변수의 값을 초기화하는 것이다.

□ 클래스 변수의 메모리 생성
◇ 클래스로 변수만 선언했을 때 메모리가 생성되지 않는다.
◇ 메모리를 생성하기 위해서는 반드시 new와 생성자를 함께 사용해야 한다.

생성자에 대한 자세한 내용은 앞으로 배우게 될 것이다. 여기서는 자바에서 클래스로 메모리를 생성하려면 new와 생성자가 필요하다는 것만 기억해두기 바란다.

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
32 Java 2.3.1 클래스와 데이터 타입의 관계 IT장인 2013.11.22 385
31 Java 2.2.4 사용자 정의 데이터 타입 테스트 IT장인 2013.11.22 659
» Java 2.2.3 메모리 생성 연산자 IT장인 2013.11.22 361
29 Java 2.2.2 클래스의 사용 IT장인 2013.11.22 358
28 Java 2.2.1 클래스 만들기 IT장인 2013.11.22 333
27 Java 2.1.5 클래스로 가는 길목 IT장인 2013.11.22 314
26 Java 2.1.4 구조체의 사용 IT장인 2013.11.22 356
25 Java 2.1.3 구조체 만들기 IT장인 2013.11.22 361
24 Java 2.1.2 기본 데이터 타입의 한계 IT장인 2013.11.22 336
23 Java 2.1.1 핵심 Question IT장인 2013.11.22 290
22 Java 1.6.4 결론 IT장인 2013.11.21 332
21 Java 1.6.3 할당의 예 IT장인 2013.11.21 338
Board Pagination Prev 1 2 3 4 5 6 Next
/ 6