Any member function of the class as well as the constructors can access the private data.
That is the private members of the instance object the method is called on or the private members of other instances.
In this case it's the constructor and it's other instances (namely a1, a2).