21. september 2005 - 23:20Der er
21 kommentarer og 2 løsninger
Forskel på et param variabel og objekt
jeg vil gerne vide hvad forskellen er på følgende:
1) Hvis jeg har en klasse som hedder "Hej" kan jeg oprette et nyt objekt ud fra den og bruge klassens metoder efterfølgende på objektet.
2)Hvis jeg nu i en anden klasse "Farvel", laver en reference variabel af "Hej"i en metodens parameter, fx
public int lagSammen (Hej hello)
Så kan jeg stadig godt skrive Hej's metoder efter hello i koden.
Det jeg ikk kan forstå er at selvom man opretter et objekt, og har efterfølgende adgang til klassens metoder, hvorfor kan man så i andre klasse bare skrive : Hej hello, og så skrive diverse metoder fra Hej-klassen efter hello ????
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.
fordi det at kalde en metode med et argument gør det man kalder med tilgængeligt for metoden
System.out.println("Kuk kuk");
kalder println metoden med en streng - println metoden har så adgang til faktisk at udskrive den string (hvilket muligvis involverer at kalde charAt og length metoderne på den string).
jeg har læst din artikel, men syntes du selv det svarer på mit spg ?
nej det syntes jeg ikk. det er en generel artikel du har skrevet, som jeg forstår udemærket.
Men i den har du en Person klasse. Hvis du nu havde en anden klasse også som fx hed Arbejde, og i den har du en metode som hedder
public double timeLon(Person pers)
pers.hentNavn () bla bla bla....
Det er det jeg ikke kan forstå, at når man i parameter skriver "Person pers", og efterfølgende kan kalde Persons metoder efter pers, hvordan det kan lade sig gøre, fordi man har jo ikk oprettet et objekt af Person klassen under Arbejde ?
Det kan du godt... Du har ikke oprettet et objekt af klassen Person, men du sender jo en reference med til en allerede oprettet instans af klassen Person.
angående min artikel så var det bare et suplement til dit spørgsmål og også derfor jeg kun lagde en kommentar;)
kalp , lige en sidste spg før denne spg engang for alle kan gøres færdig. Man kunne lave en reference til et objekt i en anden klasse ved at skrive fx følgende:
public String hentNavn (Arbejde lon){}
og efterfølgende kan man efter lon skriver diverse metoder....
Men hvad nu hvis man bare skrev Arbejde lon under de lokalde variabler i starten...
jeg legede med et eks og fik NullPointerExp ?!?!?!
nu må du ikke spørg mig om at vedlægge koden, jeg har lavet så meget rundt i den nu at nullpointer exp er forsvundet, men jeg vil stadig gerne have en forklaring
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.