Un primo errore:
codice:
public artisti() {
Questo non è né un metodo, né un costruttore. Se fosse un costruttore dovrebbe chiamarsi "DatiArtista", poichè il costruttore deve obbligatoriamente avere lo stesso identico nome della classe e non dovrebbe avere alcuna istruzione return. Se fosse un metodo mancherebbe l'indicazione del tipo di ritorno (void se non dovesse ritornare nulla). Essendo che l'ultima istruzione è un return (tra l'altro sbagliato) di uno degli elementi dell'array (non si sa che senso abbia, ma non entro nel merito), allora dovrebbe essere un metodo e dovrebbe essere dichiarato in questo modo:
codice:
public Artista artisti() {
Se, più correttamente, si volesse far ritornare l'intero array, allora dovrebbe essere dichiarato così:
codice:
public Artista[] artisti() {
E il return alla fine dovrebbe essre semplicemente così:
L'errore più evidente: mancano le parentesi quadre per indicizzare l'array. Le hai correttamente utilizzare per istanziare ciascun oggetto e poi non le hai più usate quando vai a richiamare i metodi degli oggetti o quando fai il return alla fine del primo elemento (sempre ammesso che fosse ciò che volevi, anche se ne dubito).
codice:
artisti[0] = new Artista(); // OK
...
artisti0.setNome("Antonello"); // che fine hanno fatto le parentesi quadre attorno allo "0"?
// così:
artisti[0].setNome("Antonello");
return artisti0; // no
return artisti[0]; // Se si vuole ritornare il primo elemento
return artisti; // Se si vuole ritornare l'intero array
PS: Devi imparare ad indentare il codice altrimenti noi facciamo fatica a leggerlo e tu fai una fatica esponenziale rispetto alla nostra per stargli dietro.
Ciao.