A)
class bankAccount
{
int accno;
float balance;
bankAccount( int accno, float balance)
{
this.accno=accno;
this.balance=balance;
}
void setbalance(float balance)
{
this.balance=balance;
}
float getbalance()
{
return this.balance;
}
void withdraw(float amount)
{
System.out.println("trying to withdraw RS:"+amount +"from A/C"+accno);
System.out.println("try to get the balance info from A/c"+accno);
for(int i=1;i<20;i++)
System.out.println(i);
float bal=getbalance();
System.out.println("balance in the A/c"+accno+"is Rs."+bal);
if(bal>amount)
{
bal=bal-amount;
setbalance(bal);
System.out.println("please collect Rs: "+amount);
System.out.println("balance of A/c"+accno+"ipdate to Rs:"+bal);
}
else
{
System.out.println("insufficient funds");
}
}
}
class accountthread extends Thread
{
bankAccount acc;
float amt;
accountthread(bankAccount acc, float amt)
{
this.acc=acc;
this.amt=amt;
}
public void run()
{
acc.withdraw(amt);
}
}
classmultithreadbankingapplication {
public static void main(String[] args) throws Exception {
bankAccount a1= newbankAccount(1001,3000);
bankAccount a2= newbankAccount(1002,9000);
accountthread t1= newaccountthread(a1,3000);
accountthread t2=newaccountthread(a2,5000);
t1.start();
t2.start();
t1.join();
t2.join();
System.out.println("final balance in the 1st account Rs"+a1.getbalance());
System.out.println("final balance in the 2nd account"+a2.getbalance());
}
}
Comments
Post a Comment