minlog
article thumbnail

 

객체 지향 프로그래밍에서의 협력

 

  • 객체 지향 프로그램에서 객체 간에는 협력이 이루어짐
  • 협력을 위해서는 필요한 메세지를 전송하고 이를 처리하는 기능이 구현되어야 함
  • 매개 변수로 객체가 전달되는 경우가 발생
  • 객체 협력의 예

 

🍫 과제 문제 풀어보기

Example .
앞의 예제에서 Edward는 지각을 해서 택시를 타야 했습니다.
20000원을 가지고 있었는데 10000원을 택시비로 사용했습니다. 택시는 '잘나간다 운수' 회사 택시를 탔습니다.

Console 결과 값

Person.java

package ch15;

public class Person {
	private String personName; // 사람이름
	private int money; //보유 금액
	
	public Person() {}
	public Person(String personName,int money) {
		this.personName = personName;
		this.money = money;
	}
	
	public void personTexi(Taxi taxi) {
		taxi.send(10000);
		this.money -= 10000;
		
	}
	
	//get/set
	public String getPersonName() {
		return personName;
	}
	public void setPersonName(String personName) {
		this.personName = personName;
	}
	public int getMoney() {
		return money;
	}
	public void setMoney(int money) {
		this.money = money;
	}
	
}

 

Taxi.java

package ch15;

public class Taxi {
	private String taxiName; //택시 회사명
	private int money; //수입 
	private int count; //운행 수
	
	public Taxi() {}
	public Taxi(String taxiName) {
		this.taxiName = taxiName;
	}
	
	
	//get/set
	public void send(int money) {
		this.money += money;
	}
	public String getTaxiName() {
		return taxiName;
	}
	public void setTaxiName(String taxiName) {
		this.taxiName = taxiName;
	}
	public int getMoney() {
		return money;
	}
	public void setMoney(int money) {
		this.money = money;
	}
	public int getCount() {
		return count;
	}
	public void setCount(int count) {
		this.count = count;
	}
	
}

TaxiTest.java

package ch15;

public class TaxiTest {

	public static void main(String[] args) {
		Person personE = new Person("Edward", 20000);
		
		Taxi taxi01 = new Taxi("잘나간다 운수");
		
		personE.personTexi(taxi01);
		System.out.println(personE.getPersonName()+ "님의 남은 돈은" + personE.getMoney() + "입니다.");
		System.out.println(taxi01.getTaxiName() +  "의 수입은" + taxi01.getMoney() + "입니다.");
		
	}

}

 

 

 

 

 

 

 

 

profile

minlog

@jimin-log

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!