반응형
Bank.java
public class Bank extends Thread { // 공유 변수 static Accont obj = new Accont(); // 생성자 생성 public Bank(String name){ super(name); } // Thread 동작 내용 public void run(){ while(true){ synchronized (obj) { //100,200,300,400 중 랜덤하게 선택 //Math.random()은 0.0 ~ 1.0 사이의 숫자중에서 랜덤한 숫자를 실수로 리턴해주는 메소드 int money = (int)(Math.random()*3+1)*1000; if(obj.getBalence() >= money){ System.out.println(getName()+ "의 balence "+ obj.getBalence()); System.out.println(getName()+ "의 찾는 금액 "+ money); obj.withdraw(money); System.out.println(getName()+ "의 balence "+ obj.getBalence()); }else{ System.out.println("잔액 부족 입니다."); break; } } } } }
ThreadMain3.java
public class ThreadMain3 { public static void main(String[] args) { // TODO Auto-generated method stub Bank bk1 = new Bank("ATM"); Bank bk2 = new Bank("인터넷 뱅킹"); bk1.start(); bk2.start(); } }
'JAVA > Java' 카테고리의 다른 글
[JAVA] File 객체 사용 (0) | 2014.11.18 |
---|---|
[JAVA] Frame 을 이용한 window 모양 만들기 (0) | 2014.11.18 |
[JAVA] Thread 을 이용한 5초후 인터럽트 발생 예제 (0) | 2014.11.18 |
[JAVA] Thread 로 0.5초마다 숫자를 증가시키고 Thread이름을 출력 (0) | 2014.11.18 |
[JAVA] thread 사용하여 증가시키는 예 (0) | 2014.11.18 |