IT
Java-programmering
12. marts 2007 af
micvest (Slettet)
Hej, jeg har et problem: hvad betyder nedenstående linje?
"public static void main(String[] args) {"
Hvorfor skal man bruge den?
Hvad gør den godt for?
Hvis jeg undlader denne linje, og opretter en metode, hvorfor registrerer programmet da dette som en fejl?
Jeg vil sætte stor pris på en uddybende og informativ, konstruktiv besvarelse.
"public static void main(String[] args) {"
Hvorfor skal man bruge den?
Hvad gør den godt for?
Hvis jeg undlader denne linje, og opretter en metode, hvorfor registrerer programmet da dette som en fejl?
Jeg vil sætte stor pris på en uddybende og informativ, konstruktiv besvarelse.
Svar #1
12. marts 2007 af janandersen (Slettet)
det er den metode, som java-maskinen kalder, for at starte eksekveringen af programmet. args[] er et array af strenge med de argumentet, som programmet er kaldt med.
public metoden, at metoden kan ses udenfor klassen
static betyder, at metoden kaldes uden en instans af klassen.
void betyder, at metoden ingen returværdi har
public metoden, at metoden kan ses udenfor klassen
static betyder, at metoden kaldes uden en instans af klassen.
void betyder, at metoden ingen returværdi har
Svar #2
24. marts 2007 af davie (Slettet)
Main-metoden er i praksis det eneste Java ved om dit program, når du ønsker at køre det.
Du har formentlig skrevet
java MitProgram
efter du har fjernet main-metoden. Dette giver en ClassNotFoundException fra JVM (Java Virtual Machine) som kører programmet, og det har ikke noget med hvad du ellers har skrevet i programmet at gøre. Bemærk at denne fejl sker under udførslen da compileren ikke har en jordisk chance for at fange denne fejl..
Man anser det for god stil at skille sine metoder og lignende ud i andre klasser og så instantiere disse inde i din main-metode i en klasse man kunne kalde test. Insisterer man på at skrive metoder i samme klasse som main, og derefter kalder dem fra main, skal de være statiske. Ellers får man en compile-fejl...
Som janandersen helt rigtigt skriver kalder JVM main metoden på din klasse på følgende måde: saml argumenter i array. Kald MitProgram.main(arrayafargs), og alt hvad du har skrevet i main-metoden bliver fortolket.
Håber det kunne bringe lidt klarhed over problemet
David
Du har formentlig skrevet
java MitProgram
efter du har fjernet main-metoden. Dette giver en ClassNotFoundException fra JVM (Java Virtual Machine) som kører programmet, og det har ikke noget med hvad du ellers har skrevet i programmet at gøre. Bemærk at denne fejl sker under udførslen da compileren ikke har en jordisk chance for at fange denne fejl..
Man anser det for god stil at skille sine metoder og lignende ud i andre klasser og så instantiere disse inde i din main-metode i en klasse man kunne kalde test. Insisterer man på at skrive metoder i samme klasse som main, og derefter kalder dem fra main, skal de være statiske. Ellers får man en compile-fejl...
Som janandersen helt rigtigt skriver kalder JVM main metoden på din klasse på følgende måde: saml argumenter i array. Kald MitProgram.main(arrayafargs), og alt hvad du har skrevet i main-metoden bliver fortolket.
Håber det kunne bringe lidt klarhed over problemet
David
Skriv et svar til: Java-programmering
Du skal være logget ind, for at skrive et svar til dette spørgsmål. Klik her for at logge ind.
Har du ikke en bruger på Studieportalen.dk?
Klik her for at oprette en bruger.
