Problema ArrayList<Pacco>...

Piergaetano

Nuovo Utente
16 Set 2020
1
0
0
Salve a tutti come da titolo ho un problema con il mio progetto java. Vi spiego un po il contesto.
Il programma prevede l'inserimento, cancellazione etc da parte di alcuni thread(immaginate produttori e consumatori) in una memoria condivisa (ArrayList) di alcuni pacchi. In particolare per la cancellazione dei pacchi devo verificare alcune condizioni: ogni class pacco (elemento dell'ArrayList) ha 3 Instance Variable ed i relativi Get and Set Method. Io nel metodo cancellaPacchi (nella classe Monitor) devo scorrere l'array e di ciascun pacco verificarne il peso (una delle Instance Variable della classe Pacco) qui viene il problema.

ho implementato questo codice:

public void rimuoviPacchi() { /* non dev'essere synchronized questo metodo*/


for(Pacco p : Lista) { /*Lista ovviamente è l arraylist di pacchi*/
p.getDimensione();
}
}

il problema è che quando uso la notazione puntata p. le possibili scelte sono equals, getClass, wait, notify, notifyAll... perché non accede (come mi aspetto faccia) ai metodi della class p instanceof Pacco?

leggendo su internet tutti implementano o questa soluzione o un'altra mediante l uso di un for(i = 0....i++) {Lista.get(i).getDimensione();} in entrambi i casi a me non trova i metodi della classe Pacco...qualcuno sa spiegarmi perché?
 

Discussioni simili