728x90
package fruitSales.ver01;
//--------------------------------------------------------------------------
// 과일 장수
//--------------------------------------------------------------------------
class FruitSeller {
int numOfApple = 100; // 사과 보유 개수
int myMoney = 0; // 보유 금액
final int APPLE_PRICE = 1000; // 사과 1개당 판매 금액
// 파는 행위
public int saleApple(int money) { // 돈을 받는다. => (int money)
int num = money / APPLE_PRICE; // 받은 돈에 해당하는 사과의 개수
myMoney += money; // 받은 돈을 돈주머니에 넣는다.
numOfApple -= num; // 사과를 판매한 만큼 차감한다.
return num; // 사과를 구매자에게 준다.
}
// 판매 현황
public void showSaleResult() {
System.out.println("남은 사과의 개수 : " + numOfApple);
System.out.println("오늘 벌어들인 돈 : " + myMoney);
}
} // End - class FruitSeller
//--------------------------------------------------------------------------
// 과일 구매자
//--------------------------------------------------------------------------
class FruitBuyer {
int myMoney = 50000; // 보유 금액
int numOfApple = 0; //사과 보유 개수
// 과일 구매 행위 (어느 과일장수에세 돈을 주고 사과를 구매한다.)
public void buyApple(FruitSeller seller, int money) {
numOfApple += seller.saleApple(money); // 과일장수에게 돈을 주고 과일을 건네 받는다.
myMoney -= money; // 과일 판매 금액을 차감한다.
}
// 시장에서 장 본 결과
public void showBuyResult() {
System.out.println("현재 남은 돈 : " + myMoney);
System.out.println("사과 구매 개수 : " + numOfApple);
}
} // End - class FruitBuyer
//--------------------------------------------------------------------------
// 시장역할의 클래스
//--------------------------------------------------------------------------
public class fruitSalesVer01 {
public static void main(String[] args) {
FruitSeller seller1 = new FruitSeller(); // 과일 장수 1 등장
FruitSeller seller2 = new FruitSeller(); // 과일 장수 2 등장
FruitSeller seller3 = new FruitSeller(); // 과일 장수 3 등장
FruitBuyer buyer = new FruitBuyer(); // 과일 구매자 등장
// 과일 구매자 등장
buyer.buyApple(seller1, 10000);
buyer.showBuyResult(); // 과일 구매자의 현재 상황
seller1.showSaleResult(); // 과일 판매자의 현재 현황
buyer.buyApple(seller2, 20000);
buyer.showBuyResult(); // 과일 구매자의 현재 상황
seller1.showSaleResult(); // 과일 판매자의 현재 현황
buyer.buyApple(seller3, 10000);
buyer.showBuyResult(); // 과일 구매자의 현재 상황
seller1.showSaleResult(); // 과일 판매자의 현재 현황
// 과일을 구매하는 행위
}
} // End - public class fruitSalesVer01
'Language > Java' 카테고리의 다른 글
[Java] 실습 FruitSalesVer03 (0) | 2022.08.08 |
---|---|
[Java] 실습 fruitSalesVer02 (0) | 2022.08.08 |
[Java] 실습 PhoneBookVer01, PhoneBookVer02 (0) | 2022.08.05 |
[Java] 실습 BlockExam (0) | 2022.08.05 |
[Java] 함수형 프로그래밍 (0) | 2022.08.05 |