Discussion of Activity 8.5 - Testing locks and objects

Sample solution

Code for class TestThread:

public class TestThread extends Thread
{
   int threadID;
   BankAccount account;

   public TestThread(int tid, BankAccount ba)
   {
      threadID = tid;
      account = ba;
   }

   public void run()
   {
      for (int i = 0; i < 5; i++)
      {
         account.accessBalance(threadID);
      }
   }
}

Code for running the classes Main:

public class Main
{
   public static void main(String[] args)
   {
      BankAccount ba1 = new BankAccount();
      BankAccount ba2 = new BankAccount();
      TestThread tt1 = new TestThread(1,ba1);
      TestThread tt2 = new TestThread(2,ba2);
      tt1.start();
      tt2.start();
   }
}