본문 바로가기
JAVA

JAVA - 클래스와 객체

by 스노위13 2022. 6. 20.

1. 클래스와 객체 
클래스는 함수들과 이에 관련된 변수들을 한 곳에서 관리하고 재사용할 수 있게 해준다. 

클래스와 객체를 비유적으로 설명하자면 클래스는 쿠키틀이고 객체는 그 틀에 맞춰 찍어낸 쿠키이다. 
쿠키틀로 많은 쿠키들을 찍어낼 수 있는 것처럼 하나의 클래스로부터 많은 객체를 만들어낼 수 있다. 그런데 이 객체들은 각각의 특징과 움직임을 가진다. 아래에서 좀 더 자세하게 살펴보자. 

2.객체란?
그런데 각각의 객체는 자신만의 속성(attribute)이 있어서 다른 객체와 구분이 가능하다.

쿠키런 킹덤과 그곳의 쿠키들로 객체에 대해서 자세히 살펴보자.

출처 : 쿠키런 킹덤 게임 화면

클래스를 이용해 다양한 쿠키 객체들을 만들어 냈다. 그런데 위의 사진처럼 각각의 쿠키 객체들은 다른 쿠키 객체와 한눈에 비교가 된다. 각 쿠키들은 저마다 다른 이름, 생김새, 직업, 스킬등과 같은 속성을 가졌기 때문이다. 이렇게 각각의 쿠키 객체를 다른 쿠키들과 구분해주는 속성을 필드(field)라고 한다. 

 

출처 : 쿠키런 킹덤

위의 사진에서 보이는 우유맛 쿠키라는 이름, 생김새, EPIC, 방어형, 전방 등등이 다른 쿠키와 구분되는 필드라고 할 수 있다.

출처 : 쿠키런 킹덤

또한 이런 쿠키들은 달리기, 점프, 공격과 같은 다양한 동작들을 한다. 이렇게 객체의 동작에 해당하는 부분을 메소드(method)라고 부른다. 
결국 객체는 필드와 메소드로 이루어진다.

3. 객체 간의 관계

객체는 개별적으로도 사용할 수 있지만 대부분 다른 객체와 관계를 맺고 상효작용을 한다. 이러한 관계의 종류에는 집합 관계, 사용 관계, 상속 관계가 있다. 

1) 사용 관계 : 객체 간의 상호작용

출처 : 미리캔버스

사람 객체는 핸드폰 객체를 사용하여 사진 찍기, 영상 보기, 전화하기와 같은 다양한 행동 즉 메소드를 호출한다. 사람이 핸드폰을 사용하므로 사람과 핸드폰은 사용의 관계라고 할 수 있다. 

2) 상속 관계 : 상위 객체를 기반으로 하위 객체를 생성
일반적으로 상위 객체는 종류를 의미하고 하위 객체는 이에 속하는 구체적인 사물이다. 위에서 사람이 사용하는 핸드폰은 기계의 한 종류로 기계(상위)와 핸드폰(하위)는 상속 관계에 있다고 볼 수 있다.

3) 집함 관계 : 부품 객체를 이용하여 완성품 객체를 구성
핸드폰은 액정, 버튼, 카메라, 반도체 등의 부품들이 설계도에 맞춰 조립되어 만들어진다. 이러한 부품들과 핸드폰 사이의 관계가 집합관계이다. 

 

참고 도서 : 신용권, <이것이 자바다>

댓글