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
번호 분류 제목 글쓴이 날짜 조회 수
44 Java 3.3.6 값복사와 매개변수의 전달 IT장인 2013.12.28 460
43 Java 1.4.1 데이터 타입의 분류 IT장인 2013.11.21 460
42 Java 3.2.2 자바의 환경설정 IT장인 2013.12.28 451
41 Java 1.2.1 데이터 타입의 첫 번째 목적 IT장인 2013.11.21 447
40 Java 3.4.4 변수와 메서드의 분리와 결합 IT장인 2013.12.28 446
39 Java 1.6.1 데이터 타입과 변수, 상수 IT장인 2013.11.21 446
38 Java 1.3.1 메모리에 접근하는 방법 IT장인 2013.11.21 430
37 Java 1.1.2 Introduction IT장인 2013.11.21 418
36 Java 3.3.4 리턴과 매개변수 IT장인 2013.12.28 404
35 Java 3.3.7 값복사가 적용되는 곳 IT장인 2013.12.28 399
34 Java 1.1.1 핵심 Question IT장인 2013.11.21 391
33 Java 1.5.2 변수의 의미 IT장인 2013.11.21 387
Board Pagination Prev 1 2 3 4 5 6 Next
/ 6