Mangler main method?

Tags:    java

<< < 123 > >>
Hej udviklere.

Nu har jeg snart arbejdet mig igennem halvdelen af 'Objektorienteret programmering i Java' men når jeg skal til at køre mange af de programmer, som man skal lave i bogen, så kommer der en meddelse der siger: "Class "Boks3.Boks3" does not have a main method."

Og det syntes jeg er temmelig mærkeligt, da jeg har skrevet koden, fuldstændig som i bogen.

Kig her
Fold kodeboks ind/udKode 


Hvad er det, jeg mangler for at få det til at virke?

På forhånd tak.
Mvh. Thomas Sørensen



28 svar postet i denne tråd vises herunder
2 indlæg har modtaget i alt 4 karma
Sorter efter stemmer Sorter efter dato
"javac Boks3.java" for at compile.

Det virker her:

Fold kodeboks ind/udKode 


Hvis du ikke åbner commandoprompten (Start > Kør > cmd > "Enter"), og kører det derfra. Så vil der kun blive åbnet et output vindue i et split sekund, som lukker så snart programmet har kørt. Dvs. du får aldrig set dine "System.out.println()". :)



Indlæg senest redigeret d. 17.02.2007 13:40 af Bruger #11298
Lars Udengaard: Når jeg kører 'javac Boks3.java' direkte fra roden på C drevet, hvor jeg har kopieret min Boks3.java over i, så skriver den dette: "'javac' blev ikke genkendt som en intern eller ekstern kommando, et program eller en batch fil'

Hvad gør jeg forkert?



Det er fordi du ikke har sat stien til din Java SDK i den globale miljøvariable "path" :)

Det lyder umiddelbart lidt kryptisk, men det er det ikke:

Højreklik på "Denne computer", og vælg "Egenskaber".

Vælg fanebladet "Avanceret", og tryk på knappen "Miljøvariable" i bunden.

Under "Systemvariable" skal du finde den der hedder "Path", og redigere den.

NB: Det er vigtigt du ikke fjerner hvad der står i den i forvejen.

Men for enden af den tilføjer et semicolon, og stien til din javac.exe i dit Java SDK.

;C:\\Programmer\\Java\\jdk1.6.0\\bin

i mit tilfælde.





Det er fordi du ikke har sat stien til din Java SDK i den globale miljøvariable "path" :)

Det lyder umiddelbart lidt kryptisk, men det er det ikke:

Højreklik på "Denne computer", og vælg "Egenskaber".

Vælg fanebladet "Avanceret", og tryk på knappen "Miljøvariable" i bunden.

Under "Systemvariable" skal du finde den der hedder "Path", og redigere den.

NB: Det er vigtigt du ikke fjerner hvad der står i den i forvejen.

Men for enden af den tilføjer et semicolon, og stien til din javac.exe i dit Java SDK.

;C:\\Programmer\\Java\\jdk1.6.0\\bin

i mit tilfælde.



Så kryptisk var det da heller ikke.
Men Lars, du er squ en guttermand! :D
For det virker!

Mange tak for det. Du får lige dine point :)



Thomas, det lyder ikke som om du både har læst OG forstået bogen. Ved du, hvad din kode gør ?
Ved du hvorfor din kode IKKE gjorde som du forventede ?



Robert: Tjoo.. Jeg syntes da at jeg forstår det meste af den :)

Altså, min kode starter med lave tre konstruktører (længde, bredde og højde).
Derefter laver jeg en konstruktør, som laver Boks3.
Så skal programmet skrive 'Standardboks oprettes' ud på skærmen.

Der efter, sætter jeg nogle mål, på de tre konstruktører jeg lavede i starten, de for alle sammen værdien 10.

Nu laver vi en konstruktør til, som også får bredde, højde og længde, men der er ikke lagt nogen værdier på dem, endnu.

Nu skal programmet skrive den nye konstruktørs, længde, højde og bredde ud på skærmen, men det gør den ikke, fordi at de ikke har fået nogen værdi endnu.

Nu skal vi til at give længde, højde og bredde en værdi.
Det gøres med en if løkke, for hvis, lgd, b, og h er mindre end, eller lig med 0, så får de standard værdier, som vi har sat til at være 10.
Men hvis lgd, b og h ikke er lige med eller mindre end 0, så beholder de bare deres værdier.

Og til sidst, regner vi boksens rumfang ud.. Hvorfor skriver den egentlig ikke det ud på skærmen? Det har jeg så alligevel ikke forstået.. :)



Læs lige op på hvad en konstruktør er :)

Du laver nogle metoder. Derefter skal du kalde dem for at udføre det som står i dem.



Konstruktør = En konstruktør er en speciel metode, der har samme navn som klassen.
Man kalder en konstruktør ved oprettelse af et objet med 'new' operatoren og benyttes mest til at klare forskeliige former for initialisering af det nyte objekt.

Right?



<< < 123 > >>
t