package kr.ac.kr.MP01;
public class ARSMain {
public static void main(String[] args) {
arsVw vw = new arsVw();
try {
vw.start();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
//==================================================================
package kr.ac.kr.MP01;
import java.util.Scanner;
public class arsVw {
private Scanner sc = new Scanner(System.in);
public Call c1 = new Call("1번 콜");
public Call c2 = new Call("2번 콜");
public Call c3 = new Call("3번 콜");
SumThread s1 = new SumThread();
void start() throws InterruptedException{
while(true){
System.out.println("성금 모금을 시작합니다.. ");
System.out.printf("%s \n%s \n%s", "1. 모금시작", "2. 현재모금현황", "3. 종료 \n");
int choose = Integer.parseInt(sc.nextLine());
switch(choose){
case 1 :
(c1 = new Call("1번")).start();
(c2 = new Call("2번")).start();
(c3 = new Call("3번")).start();
Thread.sleep(2000);
s1.getSum(c1.getMoney(), c1.getName());
s1.getSum(c2.getMoney(), c2.getName());
s1.getSum(c3.getMoney(), c3.getName());
Thread.sleep(2000);
break;
case 2 :
System.out.println("현재 모금 현황입니다.");
s1.gettSum();
break;
case 3 :
System.exit(0);
break;
default :
System.out.println("잘못 입력 하셨습니다.");
}
}
}
}
//==================================================================
package kr.ac.kr.MP01;
import java.util.Random;
public class Call extends Thread {
private Random r = new Random();
private int sM;
public boolean flag = false;
Call(String name) {
super(name);
}
@Override
public void run() {
for (int i = 0; i < 10; i++) {
int money = r.nextInt(100)+1;
System.out.println(super.getName() + "에서 " + money + " 원을 모금하였습니다.");
setMoney(money);
}
}
public void setMoney(int m){
sM += m;
}
public int getMoney(){
return sM;
}
}
//==================================================================
package kr.ac.kr.MP01;
public class SumThread{
int tSum;
public void getSum(int sum, String n){
tSum += sum;
System.out.println("===============================");
System.out.println(n+"에서 총 "+sum+" 원이 모금되었습니다.");
System.out.println("===============================");
}
public void gettSum(){
System.out.println("===============================");
System.out.println("총 "+ tSum+ "원이 모금되었습니다. 감사합니다.");
System.out.println("===============================");
}
}
//==================================================================