fuzion Skrevet 16. juli 2004 Del Skrevet 16. juli 2004 (endret) Hei folkens! Jeg har nettop begynt med java og før det hadde jeg kun erfaring fra PHP. Det som har skjedd er at jeg har rotet meg bort i noe Input/Output greier som jeg ikke får til Her er koden min... import java.io.*; public class detVarSomHelvete { public static InputStreamReader henter = new InputStreamReader(System.in); public static BufferedReader leser = new BufferedReader(henter); public static void main(String[] args) { try { String harLest = leser.ReadLine(); } catch (IOException io) { reportError(); } } } detVarSomHelvete.java [12:1] cannot resolve symbol symbol : method ReadLine () location: class java.io.BufferedReader try { String harLest = leser.ReadLine(); } ^ detVarSomHelvete.java [13:1] cannot resolve symbol symbol : method reportError () location: class detVarSomHelvete catch (IOException io) { reportError(); } ^ 2 errors Errors compiling detVarSomHelvete. Denne feilmeldingen sender kompilatoren meg når jeg forsøker å kjøre applikasjonen. Kan noen fortelle meg hva som er galt med koden min? Gjerne så en amatør skjønner det Endret 16. juli 2004 av fuzion Lenke til kommentar
Frank2004 Skrevet 16. juli 2004 Del Skrevet 16. juli 2004 Her er koden min... Fysj og fy! Neida, var ikke så ille, men jeg tenkte jeg skulle være litt pedantisk her. Hvis jeg plukker på alt jeg ser av småting, så er det jo mulig du lærer mer. går over til å quote med '>' -er, da det blir en del linjer her. >import java.io.*; > >public class detVarSomHelvete Etter Java naming conventions, så er det vanlig å starte klassenavn med store bokstaver, mens metoder og variabler begynner med små. >{ Det er også standard å sette krøllparantes på samme linje som deklarasjonen. Altså "public class DetVarSomHelvete {". >public static InputStreamReader henter = new InputStreamReader(System.in); >public static BufferedReader leser = new BufferedReader(henter); Med mindre variablene virkelig har et forhold til _klassen_, og ikke en instans av denne, så bør de ikke være statiske. Enten definerer du dem i main() og sender dem videre som parametre i funksjonskall, eller så lager du en instans av klassen og bruker denne. (Men om det er meningen at flere instanser av klassen skal skrive til samme streams, så er det selvsagt greit å bruke statiske variabler.) >public static void main(String[] args) >{ > > try { String harLest = leser.ReadLine(); } > catch (IOException io) { reportError(); } > >} > >} Hårreisende formatering av koden igjen Sjekk Code Conventions for the Java Programming Language hos Sun. >detVarSomHelvete.java [12:1] cannot resolve symbol >symbol : method ReadLine () >location: class java.io.BufferedReader > try { String harLest = leser.ReadLine(); } Kompilatoren finner ingen metode kalt ReadLine() i klassen java.io.BufferedReader. Prøv med readLine(). >detVarSomHelvete.java [13:1] cannot resolve symbol >symbol : method reportError () >location: class detVarSomHelvete > catch (IOException io) { reportError(); } Kompilatoren finner ingen metod kalt reportError() i klassen detVarSomHelvete. Glemt å skrive denne? >Denne feilmeldingen sender kompilatoren meg når jeg forsøker å kjøre >applikasjonen. Kompilatoren kompilerer, mens det er jvm'en som kjører Java-programmer. Det var alt jeg så, lykke til med Java. Lenke til kommentar
fuzion Skrevet 16. juli 2004 Forfatter Del Skrevet 16. juli 2004 Takker for godt og fyldig svar! Dette hjalp MYE... Er klar over en del av navngivnings- og formateringsfeilene, men jeg brydde meg ikke særlig om det i denne omgang Som sagt... Har ganske fyldig erfaring fra JS og PHP. Men den funksjonen (readLine()) var jeg ikke klar over Uansett.. Takk så inderlig mye! (Og jeg vet forresten av det er kompilatoren som kompilerer og jvm som kjører ) Lenke til kommentar
sikkert Skrevet 18. juli 2004 Del Skrevet 18. juli 2004 Husk at java er case-sensitive på alt (klasser, metoder og variabler...) En liten detalj som kan skape hodebry til tider;) Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå