본문 바로가기
Java/기초

[java기초] 객체의 협업

by Meaning_ 2021. 6. 20.
728x90
반응형

객체의 협업에 대한 내용은 예제를 통해 이해해보겠다.

 

학생 3명이 버스, 지하철에 탈 것이다. (버스,지하철,학생 클래스를 생성한다. )

버스,지하철 클래스에는 버스/지하철의 번호, 승객 수(학생 수),수입에 대한 정보를 포함하고, 학생 클래스에는 학생의 남은 돈에 대한 정보를 포함한다.

(버스 탑승비용은 1000원, 지하철 탑승 비용은 1500원이다)

 

<Student class>

 

 

학생의 이름과 돈을 반드시 포함하는 생성자를 만들어준다.

버스나 지하철을 탔을 때 돈이 차감되는 takeBus/takeSubway 를 만들어준다. 매개변수는 버스/지하철 클래스의 인스턴스를 넣어준다.

take함수는 밑에 버스/지하철 클래스와 협업하는 함수이다. 함수의 인자에 숫자(돈)을 넣어주면 버스/지하철 클래스에 가서 this.money+=money 에서 money로 인식한다!

 

 

정보를 알려주는 showInfo함수를 만든다. 

 

<Bus class>

 

 

생성자를 만들어줘서 버스 번호에 대한 정보를 반드시 포함한다.

 

객체의 협업이 이루어지는 곳이다. money라는 매개변수를 받는데, 이것은 Student 클래스의 takeBus 함수에서 bus.take(1000)에서 1000만큼을 받아온 것이다. 

승객의 수를 나타내는 변수인 passengerCount를 1만큼 증가시킨다. 

 

정보를 입력하는 showInfo함수를 만들어줬다.


<Subway class>

Bus class와 만드는 과정이 동일하다. 

 

<main함수가 포함된 class>

 

나는 class라는 이름의 클래스를 만들어서 거기에 메인함수를 만들어줬다.

학생 2명은 같은 100번 버스를 탄다(james,alex)

학생 1명은 2호선을 탄다.

 

<결과>

728x90
반응형

댓글