Implementazione del supertipo
// OVERVIEW: un IntSet θ un insieme modificabile di interi di
private Vector els; // la rappresentazione
public IntSet () {els = new Vector();}
// EFFECTS: inizializza this a vuoto
private int getIndex (Integer x) {... }
// EFFECTS: se x occorre in this ritorna la posizione in cui si
public boolean isIn (int x)
// EFFECTS: se x appartiene a this ritorna true, altrimenti false
{return getIndex(new Integer(x)) >= 0; }
public boolean subset (Intset s)
// EFFECTS: se s θ un sottoinsieme di this ritorna true, altrimenti
{if (s == null) return false;
for (int i = 0; i < els.size(); i++)
if (!s.isIn(((Integer) els.get(i)).intValue()))
la rappresentazione θ privata
- i sottotipi non la possono accedere, ma c’θ l’iteratore pubblico elements