why would you want to change the constructor of SubjectWithArrayAccess ? I'm saying that they should be independant classes (so no change at all in SubjectWithArrayAccess) given that they are dealing with different methods of the class.
But anyway, as said previously, this probably cannot work fine anyway