Avatar billede ullidk Nybegynder
14. september 2004 - 21:38 Der er 6 kommentarer og
1 løsning

Hvad betyder denne fejl?

Jeg faar flg. fejl ved kompilering:
Cannot reference test before supertype constructor has been called

Min kode:

class Navn extends HovedNavn
{
private String test = "Hejsa"

public Navn()
{
super(test)
}
}

Nogen der paa godt gammeldags dansk kan forklare mig hvad aarsagen er og hvordan jeg retter det?
Avatar billede arne_v Ekspert
14. september 2004 - 21:40 #1
Du kan ikke bruge instans variabel test førend efter super klassens
constructor er kaldt.
Avatar billede arne_v Ekspert
14. september 2004 - 21:40 #2
Jeg vil tro at

class Navn extends HovedNavn
{
private static final String test = "Hejsa"

public Navn()
{
super(test)
}
}

vil compile
Avatar billede ullidk Nybegynder
14. september 2004 - 21:44 #3
Ok tak, men det var det jeg mente med "Godt gammeldags dansk" for jeg kan sagtens selv oversaette fejlmeddelelsen, men hvad BETYDER den? Hvorfor virker den ikke, hvorimod den du har skrevet virker?
Avatar billede arne_v Ekspert
14. september 2004 - 21:47 #4
Nøgleordet er instans variabel.

Du kan ikke bruge en instans variabel førend instans er oprettet og instansen er
ikke oprettet førend super klassens constructor er kaldt.
Avatar billede arne_v Ekspert
14. september 2004 - 21:49 #5
Hvis super klassen er stue etagen og denne klasse er 1. sal, så beder du
bygge firmaet læse hvordan de skal bygge stue etagen på væggen i 1. sal.
Avatar billede ullidk Nybegynder
14. september 2004 - 21:53 #6
Ok, saa tror jeg jeg er med...takker mange gange! Svar:)
Avatar billede arne_v Ekspert
14. september 2004 - 21:54 #7
jep
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester