What is the effect of attempting to compile and run this Java program that consists of two class definitions in separate files:
public class One
{
   public One()
   {  a = new int[3];
      for (int i = 0; i < 3; i++)
      {  a[i] = i * 2;
      }
   }

   public int[] get()
   {  return a;
   }

   public void display()
   {  for (int i = 0; i < 3; i++)   
      {  System.out.print(a[i]);
      }
   }

   private int[] a;
}

public class Two
{
   public static void main(String[] args)
   {  One obj = new One();
      obj.display();
      int[] b = obj.get();
      b[0]++;
      obj.display();
   }
}
(a) The program compiles and, when run, displays: 024024
(b) It compiles and, when run, displays: 024124
(c) It doesn't compile.
(d) It compiles but, when run, gives an array index of out bounds exception.

Select the most appropriate answer.