Avatar billede arnejan Nybegynder
13. oktober 2004 - 14:05 Der er 8 kommentarer og
1 løsning

Forhinde public void paint(Graphics g) i at blive udført

Kan man godt gøre sådan at

f.eks.

public void paint(Graphics g)

Ikke bliver udført eller f.eks. start eller init i en java applet.

Jeg mener altså den kode som maskinen selv udfører før eller efter public void paint(Graphics g) i koden bliver kørt ??
Avatar billede arne_v Ekspert
13. oktober 2004 - 14:07 #1
Er det ikke bare at lave en tom metode uden indhold i ?
Avatar billede arnejan Nybegynder
13. oktober 2004 - 14:15 #2
Amen jeg, det kan godt være at jeg ikke rigtig har fattet det der med nedarvning og sånen. Men jeg mener der er vel noget "hemmeligt kode" i Applet klassen der også bliver udført.
Avatar billede martinbk Nybegynder
13. oktober 2004 - 14:44 #3
ikke hvis du overrider den nedarvede metode paint med din egen, som så bare er tom som arne ganske rigtig sige -> public void paint(Graphics g) {}
Avatar billede arne_v Ekspert
13. oktober 2004 - 14:46 #4
Medmindre du kalder super klassens metode af samme navn, så bliver der ikke udført
noget behind the scene.

[men det har altså nogle ret store effekter hvis man fjerner paint !!]
Avatar billede arnejan Nybegynder
13. oktober 2004 - 14:49 #5
Men hvad skal jeg skrive for at udføre superklassen af samme navn. Det gør jeg da hverken i min init(), start(), eller paint() .

`?
Avatar billede arne_v Ekspert
13. oktober 2004 - 14:53 #6
super.metodenavn(argumenter)
Avatar billede martinbk Nybegynder
13. oktober 2004 - 14:54 #7
hvis du ikke har nogen constuctors på din arvede klasse laver compileren implicit en tom constructor:

public Klasse() {
super();
}

dette giver mening da alle klasser arver fra klassen Object

mht. at kalde metoder på din superklasse findes det resaverede ord super, hvorved du kan kalde superklassens metoder i dit tilfælde super.paint();
Avatar billede martinbk Nybegynder
13. oktober 2004 - 14:55 #8
ihh arne, du er da alt for hurtig :-)
Avatar billede arnejan Nybegynder
15. oktober 2004 - 13:17 #9
tak
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