Contents

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

단축키

Prev이전 문서

Next다음 문서

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

단축키

Prev이전 문서

Next다음 문서

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


2.3.1 클래스와 데이터 타입의 관계

구조체와 클래스의 차이를 학습하기 전에 데이터 타입, 변수와 상수의 구조를 살펴보자. 이 구조를 알고 있다면, 좀 더 쉽게 구조체와 클래스의 개념에 접근할 수 있다. 일단 여러분들이 지금까지 배웠던 데이터 타입과 변수, 상수의 관계는 다음과 같이 나타낼 수 있다.

□ 데이터 타입, 변수, 상수의 관계
◇ 데이터 타입 : 무존재(無存在)
◇ 변수 : 존재(存在)
◇ 상수 : 실존(實存)

데이터 타입, 변수 그리고 상수의 관계는 수직구조로 되어 있다. 데이터 타입의 하위에는 변수가 존재하며, 변수의 하위에는 상수가 존재한다. 지금까지 학습한 내용을 바탕으로 위의 관계에 대해서 생각해보자.

데이터 타입은 존재할 수는 없지만 크기와 형태를 가지고 있기 때문에 무존재(無存在)라고 표현하였다. 데이터 타입이 변수를 통해서 메모리를 생성하기 때문에 변수는 존재(存在)라는 용어를 사용하였다. 그리고 상수는 그 자체로 존재의 의미를 가지고 있기 때문에 실존(實存)이라고 하였다.

□ 구조체와 클래스의 위치
◇ 데이터 타입 윗부분에 구조체와 클래스가 위치한다.
◇ 구조체와 클래스는 둘 다 데이터 타입 생성기이다.

그렇다면 새로운 데이터 타입을 만드는 클래스와 구조체는 어느 부분에 속하는 것일까? 위의 구조에서 제일 상위에 존재하는 것이 바로 구조체와 클래스이다. 구조체와 클래스는 데이터 타입의 윗부분에 위치하며 데이터 타입과 관련이 있다.

▣ 데이터 타입 상위에 존재하는 클래스

클래스와 구조체가 데이터 타입의 상위에 있는 이유는 새로운 데이터 타입을 만드는 역할을 담당하기 때문이다.

□ 구조체와 클래스의 역할
◇ 구조체와 클래스는 둘 다 데이터 타입 생성기이다.

구조체와 클래스는 둘 다 새로운 데이터 타입을 생성하는 데이터 타입 생성기 역할을 하고 있기 때문에 데이터 타입 상위에 존재한다. 그래서 구조체와 클래스는 동급(同級)이라고 할 수 있다. 앞의 데이터 타입과 변수, 상수의 관계에서 구조체와 클래스를 추가하면 다음과 같다.

□ 데이터 타입, 변수, 상수의 관계
◇ 클래스, 구조체 : 무(無)
◇ 데이터 타입 : 무존재(無存在)
◇ 변수 : 존재(存在)
◇ 상수 : 실존(實存)

구조체와 클래스의 위치는 위의 목록에서와 같이 제일 상위에 존재한다. 데이터 타입은 형태(Type)는 있지만 존재하지 않기 때문에 무존재(無存在)라고 칭하였다. 그렇지만 클래스는 그 상위에 존재하고 있기 때문에 아예 무(無)라고 하였다. 무(無)에서 무존재(無存在)를 만드는 역할을 한다.

구조체와 클래스는 데이터 타입을 만들기 위해서 사용하는 도구인 것이다. 기본 의미상 클래스는 구조체와 완전히 동일한 역할을 담당한다. 즉 둘 다 사용자 정의 데이터 타입을 만든다는 의미에선 동일한 역할을 한다.

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
68 Java 3.6.7 결론 IT장인 2013.12.28 1164
67 Java 3.6.6 MotorCycle m = new MotorCycle() IT장인 2013.12.28 1754
66 Java 3.6.5 참조 변수의 타입 IT장인 2013.12.28 1251
65 Java 3.6.4 참조 변수끼리의 할당 IT장인 2013.12.28 1429
64 Java 3.6.3 참조 변수의 특징 IT장인 2013.12.28 1960
63 Java 3.6.2 참조값의 원리 IT장인 2013.12.28 1442
62 Java 3.6.1 객체의 메모리 생성 IT장인 2013.12.28 536
61 Java 3.5.5 private 멤버 필드를 사용하는 이유 IT장인 2013.12.28 2557
60 Java 3.5.4 private의 사용 이유 IT장인 2013.12.28 529
59 Java 3.5.3 private에 접근하는 방법 IT장인 2013.12.28 5172
58 Java 3.5.2 private의 접근과 컴파일 에러 IT장인 2013.12.28 1388
57 Java 3.5.1 접근제어란? IT장인 2013.12.28 728
Board Pagination Prev 1 2 3 4 5 6 Next
/ 6