02. august 2006 - 11:10Der er
5 kommentarer og 2 løsninger
Arv og constructorer
Hejsa,
Jeg har en genericsk klasse der skal loade et billede fra en sti i dens constructor. selve stien skal angives af hver enkelt specialisering, men jeg synes jeg har lidt problem er med at kalde base constructoren efter at have sat min sti til billdedet property.
fx:
class GenericClass { protected path; potected image;
public GeneticClass() { image = Bitmap.FromFile(path); } }
class SpecificLoader : GenericLoader { public SpecificLoader() { path = "mitbillede.jpg"; base.her-vil-jeg-så-kalde-min-supers-constructor; } }
Denne side indeholder artikler med forskellige perspektiver på Identity & Access Management i private og offentlige organisationer. Artiklerne behandler aktuelle IAM-emner og leveres af producenter, rådgivere og implementeringspartnere.
> Constructor uden parameter er altid implicit, så den har du uanset, om du koder den eller ej.
Det er nu ikke helt rigtigt. Hvis man ikke selv laver nogen constructor så får man altid en implicit constructor. Lige så snart man selv laver en, vil denne ikke blive oprettet:
class Program { static void Main(string[] args) { Demo1 d1 = new Demo1();
Jeg tænkte nok, at jeg ikke kunne gøre det som jeg gerne ville... Ideen var at jg ville hardcode billednavnet i min klasse så det var godt indkapslet. Jeg er godt klar over løsningen med at sende en parameter med til constructoren, men jeg håbede at jeg kunne gøre det udelukkende ved at ændre en instansvariabel (som jeg ofte gør det i Delphi, hvor man i Objekt pascal, altid kan kalde sin nedarvede constructor, og ikke er bundet af at skulle gøre det i starten).. Tak til jer begge, nielle giver du lige et svar så fordeler jeg pointene mellem jer :-)
nielle >> Ja, hvis jeg lige tænker mig om, så har du faktisk ret omkring den med, at man opretter en constructor med parameter. Men det er jo ikke noget problem at oprette en tom constructor, som kun kalder base constructor.
Synes godt om
Ny brugerNybegynder
Din løsning...
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.