I et inbound callcenter, hvor identiteten på den, der ringer ind, skal bekræftes, kan kontrollen nu foregå i telefonkøen. Det understøtter fem centrale KPI'er for callcentre.
Tvivler på der skulle være en løsning på det, egentlig er det vel fornuftigt nok det der sker, superklassens konstruktør kaldes først, implicit eller explicit og sørger for at superklassen er fuldt initieret inden subklasse inititeres, i superklassen's konstruktør kalder du getText() som returnerer værdien af variablen "str", den er nødt til at være null da subklassen ikke er initieret.
Men du kan jo checke for null i Foo og så den vel klaret
Man vil vel heller ikke kalde en abstract metode fra konstruktør når man på forhånd ved der ikke kommer noget fornuftigt ud af det, da subklasse på det tidspunkt ikke kan være initieret.
brug evt en protected abstract void initialize(); i superklassen der kaldes før du laver noget på metoderne og initaliser alle ikke statiske variabler i den.
Hvordan skulle det kunne løse problemet med at kalde en subklasses metode i konstruktøren på superklassen ? Jeg kan jo ikke kalde initialize i konstruktøren.
Men, problemet er jo at jeg ikke kan kalde en subklasses metode før subklassen er konstrueret. Og jeg formoder at en klasse først er konstrueret efter at konstruktøren returnerer. Dermed kan jeg ikke fra superklassen kalde en metode i subklassen (fordi subklassen kalder superklassens konstruktør).
I forhold til dit eksempel så virker det jo at gøre sådan. Jeg er for træt til at grave i jls nu men som jeg husker det så er objektet rigtig nok først konstruret _færdigt_ når constructor afslutter men det betyder ikke du ikke kan kalde en metode. Du kan få problemer som du jo også gør her... og at stole på at folk initaliserer i en bestemt metode er måske heller ikke den bedste ide? men det virker.
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.