AspectJ: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
RolloBot (discussione | contributi)
m Bot: Correzione di uno o più errori comuni
Riga 37:
handler(IOException)
 
indica l'esecuzione di un qualsiasi blocco catch(IOException e) { .. } che gestisce un'eccezione di tipo IOException .
 
get ( int A.numero )
Riga 102:
In generale, un pointcut genera dei join point. Basti pensare che nel corpo di un qualsiasi metodo, si può verificare la creazione di un oggetto, la chiamata di un altro metodo, la gestione di un'eccezione. Idem dicasi per la gestione di un'eccezione, o per la creazione di un oggetto. In aspectj esistono pertanto delle apposite parole chiave per raggruppare i join point in insiemi in base al pointcut che li ha creati.
Esse sono: cflow e cflowbelow.
Per mostrare la differenza tra i due, prendiamo ad esempio il seguente frammento di codice :
 
pointcut ct() : call(void sum()) ;
pointcut fl() : cflow(ct) ;
 
il pointucut fl individua l'insieme di join point generati nell'esecuzione del metodo void sum, oltre al join point generato dalla chiamata del metodo sum(). Il pointcut fl, inteso come insieme di join point, contiene cioè al suo interno il poincut ct. Invece, se definiamo il pointcut fl2 come :
 
pointcut fl2() : cflowbelow(ct) ;
Riga 135:
 
questo frammento di codice fa sì che prima dell'esecuzione di un metodo di tipo void e di nome faiQualcosa sia stampato a video '''ciao'''.
Un advice può anche essere eseguito dopo un certo pointcut :
 
after(): punto1() {System.out.println("arrivederci");