02. januar 2001 - 03:26Der er
4 kommentarer og 1 løsning
fejl i metoden
hvorfor får jeg denne fejl \"Can\'t make a static reference to nonstatic variable antal in class TaelBogstaver. return antal;\" når jeg kompilerer følgende kode? public class Opgave25 { public static void main(String[] args) { ConsoleReader console = new ConsoleReader(System.in);
Metoderne tael og getResult er static, men prøver at referere antal, der ikke er erklæret static. Undlad at erklære de to metoder som static, og du vil slippe for den fejl.
Dit program vil nu alligevel ikke virke efter hensigten. Uanset hvilken tekst du indtaster, og hvilket bogstav du leder efter, vil du få at vide at det forekommer 0 gange. Det skyldes, at du erklærer en lokal variabel, antal, i metoden tael\'s første linie. Fjern den linie, og så vil linien med antal++ referere til den private variabel.
Linien int antal = 0; er i øvrigt også årsagen til at du kun får den fejl du nævnte i metoden getResult. Metoden tael prøver jo ikke at referere TaelBogstaver\'s private int antal.
I din programstruktur er det fornuftigt, at benytte statiske metoder, samt en statisk variabel som tæller. Hvis du skal bruge tælleren i anden sammenhæng i samme program-kørsel, skal du bare huske at nulstille variablen!
public class Opgave25 { public static void main(String[] args) { ConsoleReader console = new ConsoleReader(System.in);
det var pstric\'s løsning jeg skulle bruge..da det er nogle opgaver vi har fået fra læreren..og den skulle laves med instans metoden....*s*. Det er vel rimeligt at pstric får point?
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.