what is the theoretical output of this java code?

ArrayList< Integer > a = new ArrayList< Integer >();
ArrayList b = a;
a.add(new Integer(4));
b.add(new Integer(5));
a.add(new Integer(6));
System.out.println(b.size());