You should add a reference to class2 when you create class1 instances
for(int i=0; i<class1.length; i++){
class1[i] = getClass1Obj();
Class2 class2 = getClass2Obj();
class1[i].setClass2(class2);
class2List.add(class2);
}
Remember to create a setClass2 method
public setClass2(Class2 class2) { this.class2 = class2; }
In this way, class1 will have a reference to class2 and can use class2 toString