Datalogi C 23 september 2004 Henning Christiansen Lŋsning pŒ opgaven stillet i fb.m. forelūsningen 21/9-12004 Opgaven handler om at give en generisk version af en reprūsentation for objekter svarende til den vi brugte for ord i opgave 1 (class Word). Princippet er relevant hvis vi arbejder med en samling objekter med fŋlgende egenskaber, - Det enkelte objekt er "stort" i den forstand et direkte equals-test er relativt tidskrūvende. Tekststrenge er et godt eksempel. - Metoden equals er den kritiske operation som kaldes igen og igen, sŒledes at hvert enkelt objekt involveres i rigtigt mange equals-test. Ideen er ūkvivalensklasse under equals (dvs. alle de objekter som er equals) tildeles et entydigt nummer. NŒr man opretter objekter, vedligeholder man et array som hvor celle nr. n indeholder til reference til et prototypisk objekt af ūkvivalensklasse n. *Reprūsentationen* af et objekt har nu kun en (ikke-statisk) attribut, nemlig det relevante nummer. Filen SmartRepresentation.java giver en generisk udgave af en sŒdan reprūsentation, og den er produceret ved at modificere klassen Word fra besvarelsen af opgave 1, ved at String er erstattet med Object, og nogle ganske fŒ kodelinjer er tilpasset tilsvarende. Klassen Car.java benytter den. Tilsvarende med er Sequence.java en generisk udgave af den Sequence-klasse vi brugte i besvarelsen af opgave 1.