- Opstramninger af Set i forhold til Collection:
- Enhver konstruktor skal konstruere en Collection uden duplikater
- Operationen add kan ikke tilføje elementer, som allerede er i mængden
- Operationskaldet set1.equal(set2) virker som:
- set1 er delmængde af set2 og set2 er delmængde af set1
- Der er et detailkrav til operationen hashCode operationen
| | Set interfacet er stort set indentisk med Collection interfacet. Der er dog nogle stærkere krav til
nogle af operationerne, eksempelvis kravet om at et element højst kan være repræsenteret én gang i et Set objekt.
Vi kan sige, at invarianten af en klasser, som implementerer Set interfacet, er strammet. Bemærk, at interfaces ikke specificerer konstruktorer. Angående equal i Set og Collection: I Collections kan equal implementeres som Object equal, altså som ==.
I Set har equal en mere element-orienteret betydning. To ikke-identiske mængde objekter set1 og set2 kan altså
godt foranledige set1.equal(set2) |