Ciao,
Non sembra molto complicato.
Diciamo che hai:
codice:
int numeroLibri = 10;
Libro[] libri = new Libro[numeroLibri];
/* popoli l'array istanziando gli oggetti */
JLabel[] lblLibri = new JLabel[numeroLibri];
for (int i = 0; i<numeroLibri; i++) {
// assegni alla label l'immagine di copertina
lblLibri[i] = new JLabel(libri[i].getImage());
// metti il titolo come tooltip text
lblLibri[i].setToolTipText(libri[i].getTitle());
}
Ho fatto l'esempio più banale che mi è venuto in mente, ma ciò che conta è che hai "associato" ad ogni label un oggetto (in questo caso utilizzando due array paralleli).
Spero di essere stato d'aiuto