nu kender jeg ikke lige delphi som sådan, men helt generelt er forskellen at statiske klasser ikke skal instantieres før de kan bruges, hvor med dynamiske klasser skal du bruge et objekt (instans) af klassen..
et eksempel på en statisk klasse er i mange sprog Math klassen, hvis funktionalitet du kan bruge ved hjælp af.. Math.metode() altså du kan bruge klassen til at kalde dens metoder uden et math objekt
Der er ikke noget der hedder statiske og dynamiske klasser i Delphi. Der er noget der hedder statiske klassemetoder, i modsætning til normale klassemetoder. Jeg synes det er vigtigt at bruge den rigtige terminologi for at undgå forvirring. Især hvis spørgeren skal forstå det. En statisk klassemetode kan kaldes uden at klassen er blevet instantieret. Det forudsætter dog visse ting, nemlig at man ikke kan og må benytte properties og variabler på klassen. Det kan benyttes til at lægge metoder ind på en klasse som indeholder logik man ellers ville kode i en almindelig procedure, men hvis koden i proceduren knytter sig stærkt til en klasse og ikke benyttes andre steder, kan det give mening rent logisk at skrive koden i en statisk metode på klassen i stedet for at skrive en almindelig procedure.
Det er rigtigt at records nu kan indeholde metoder og properties, inklusive klassemetoder og klasseproperties, men der er store begrænsninger i forhold til normale klasser. Det er en ny ting i Delphi 2006 (måske også Delphi 2005?). Det er ikke muligt i Delphi 7.
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.