Contents

Java
2013.11.22 20:47

2.4.2 배우게 될 클래스

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

단축키

Prev이전 문서

Next다음 문서

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

단축키

Prev이전 문서

Next다음 문서

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


2.4.2 배우게 될 클래스

클래스를 데이터 타입적인 측면에서만 검토해보았다. 하지만 이것은 다 알고 있다는 가정하에 일반적인 객체지향의 개념들을 논하는 경우가 더 많다.

이 절에서는 클래스에 어떠한 기능들이 있는지 소개하는 측면에서 검토를 해보자. 다음은 클래스에 추가된 기능들을 보여주고 있다.

□ 클래스에 추가된 기능
◇ 접근제어(Access)
◇ 메서드(Method)
◇ 상속(Inheritance)

구조체와 클래스는 데이터 타입의 생성이라는 측면에서는 같은 역할을 한다. 클래스가 구조체보다 강력한 점은 접근(Access) 제어, 상속(Inheritance)의 개념 그리고 메서드(Method)의 활용 부분이 클래스에 추가된다는 점이다.

C++ 언어의 창시자인 Bjarne Stroustrup은 여러 개의 변수들을 조합해서 많은 양의 데이터를 담을 수 있도록 새로운 데이터 타입을 만드는 방법을 제안하였다.

□ Bjarne Stroustrup
◇ C++ 언어의 창시자
◇ 여러 개의 변수들을 조합해서 많은 양의 데이터를 담을 수 있도록 새로운 데이터 타입을 만드는 방법을 제안

그것을 확장하여 변수들의 관계를 정의하는 메서드를 포함시킴으로써 새로운 모델을 만들었는데, 이것이 바로 클래스이다. 그리고 각각의 데이터 타입들 간의 상속구조를 포함시키면서 OOP 기법의 발전된 모델을 제시하고 있다.

클래스 내부에 접근제어, 메서드, 상속의 개념이 삽입되면, 그 규칙을 유지하고 지키기 위해서 보다 복잡한 객체지향 개념들이 등장하게 된다. 클래스의 구조를 유지하기 위한 규칙을 배우는 것이 바로 자바를 배우는 것으로 보아도 될 것이다.

앞으로 여러분들은 접근제어, 메서드 그리고 상속을 활용하여 새로운 클래스를 디자인하고, 그 클래스를 잘 사용하는 방법 즉 다른 사람들이 만들어 둔 클래스를 활용하여 자신의 클래스로 확장하는 방법을 배우게 될 것이다.

☞ C 언어에서의 구조체와 C++의 구조체 그리고 자바
C 언어의 구조체에서는 접근제어와 메서드 그리고 상속은 아예 존재하지도 않았다. C++가 등장하면서 구조체를 발전시킨 클래스가 존재했지만, C 언어와의 호환성 문제로 기존의 C 언어에서 사용하던 구조체의 기능은 그대로 계승하고 약간의 기능개선을 하고 있다. 새로운 언어를 개발하면서 구조체는 필요 없는 존재로 여겨졌기 때문에 자바에서는 과감하게 구조체 자체를 없애 버렸다.

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
44 Java 3.2.3 컴파일과 실행 IT장인 2013.12.28 340
43 Java 3.2.2 자바의 환경설정 IT장인 2013.12.28 451
42 Java 3.2.1 자바 JDK IT장인 2013.12.28 353
41 Java 3.1.2 Introduction IT장인 2013.12.28 242
40 Java 3.1.1 핵심 Question IT장인 2013.12.28 277
39 Java 2.4.3 결론 IT장인 2013.11.22 302
» Java 2.4.2 배우게 될 클래스 IT장인 2013.11.22 350
37 Java 2.4.1 메모리와 클래스 IT장인 2013.11.22 382
36 Java 2.3.5 클래스와 메모리 IT장인 2013.11.22 314
35 Java 2.3.4 클래스와 데이터베이스 IT장인 2013.11.22 353
34 Java 2.3.3 클래스의 역할 IT장인 2013.11.22 353
33 Java 2.3.2 자바에서 사용하지 않는 구조체 IT장인 2013.11.22 379
Board Pagination Prev 1 2 3 4 5 6 Next
/ 6