07. juni 2005 - 13:19Der er
13 kommentarer og 1 løsning
OOP - Liste over objektet
Hej Eksperter
Jeg har et generelt spørgsmål vedr. Objekt-Orienteret Programmering.
Jeg har: En klasse = company En databasetabel: companies
Hvis jeg vil have detaljerne for et firma opretter jeg et objekt af klassen company og kalder metoden getDetails:
objCompany = new company company.getDetails()
Men hvis nu jeg vil vise en liste over alle firmaer(objekter) i tabllen/klassen. Så giver det for mig ingen mening at oprette et instans/objekt af klassen company og så hente alle companies - f.eks. company.getCompanies()
Så spørgsmålet er altså: Hvad gør man i OOP når man vil arbejde med mange objekter i en klasse og altså ikke ét instans af klassen???
I dette særtema om aspekter af AI ser vi på skiftet fra sprogmodeller til AI-agenter, og hvordan virksomheder kan navigere i spændet mellem teknologisk hastighed og behovet for menneskelig kontrol.
nu ved jeg ikke hvad sprog du arbejder med men hvis det er c# så kan du enten lave et array af company eller du kan hente alle firmaer ud fra databasen og add dem til en arraylist.
Programmeringssproget er underordnet. Det er et generelt spørgsmål. Jeg ved godt hvordan jeg udskriver et array eller trækker data ud af en tabel i en database.
Det er rent forståelsesmæssig OOP. Det giver for mig ingen mening at oprette et instans af klassen company for at vise alle companies.
Så helt basalt: Hvordan henter jeg samtlige objekter i en klasse (f.eks. til et array)?
Hvis du vil opbevare X firmaer så skal du have et array af dimension X eller en collection med X elementer af typen firma - altså X instanser af firma klassen
Det kan laves på maneg måder men hvis du vil minimere antallet af klasser, så laver du din klasse firma med 2 static metoder FindByPrimaryKey og FindAll som returnerer henholdsvis et firma objekt og et array / en collection af firma objekter
-- og om det faktisk er fornuftigt, kommer f.eks. an på en vurdering af dit datagrundlag, for hvis den liste over objekter (companies !-), du har brug for, er ekstremt stor ift. hvor tit du skal hente/bruge den, vil det at hente den fra databasen hver gang give mening, men hvis du tit skal bruge listen i applikationen eller den ikke er ret stor, vil det måske være bedre at have dem klar i en hashlist eller et overobjekt !o]
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.