Avatar billede martinka Nybegynder
29. januar 2002 - 13:43 Der er 7 kommentarer

Inner classes

Hej
Jeg har lavet et program hvori der indgår 4 klasser.
A,B,C og D . Disse klasser ligger i sammen package, og laver instancer af hinanden i ring - således at A bliver brugt i B, B bliver brugt i C, C bliver brugt i D og D bliver brugt i A.

Dette duede så ikke - så jeg skød vildt og lavede A som en inder klasse af B og så kørte det.

Ved godt det måske er et mærkeligt spørgsmål men jeg håber at i kan hjælpe.
Avatar billede martinka Nybegynder
29. januar 2002 - 13:44 #1
Spørgsmålet er så - hvorfor dette virkede :)
Avatar billede carstenknudsen Nybegynder
29. januar 2002 - 13:46 #2
Du må først svare på hvorfor det ikke virkede første gang.
Var det et kompileringsproblem og i så fald hvad var
problemet.
Avatar billede martinka Nybegynder
29. januar 2002 - 16:16 #3
kompileren sagde at den i B ikke kunne se de metoder jeg brugte i A
Avatar billede carstenknudsen Nybegynder
29. januar 2002 - 16:36 #4
Jamen der ligger løsningen så. Det er de modfiers
der er på metoderne private/protected/public
der lå i dit oprindelige system. Du skal næsten
gå tilbage og rette det.
Avatar billede martinka Nybegynder
29. januar 2002 - 23:45 #5
Jeg havde lavet alt "friendly" ville dette så ikke være lige meget ? også når de ligger i samme package ?
Avatar billede wiuff Nybegynder
30. januar 2002 - 09:40 #6
Selvom det ligger i samme pakke kan klasser ikke se hinandens private fields/metoder. Det kan du derimod hvis du laver dem protected.

Sådan som du har lavet det nu, er det dog nok heller ikke en god ide at lave A som en indre klasse i B... Så kan du ihvertfald ikke oprettet instanser af A i D.
Avatar billede wiuff Nybegynder
30. januar 2002 - 09:41 #7
Oops, havde lige vendt det om, det gør du jo heller ikke. Glem det :)
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