krje1980 Skrevet 7. september 2011 Del Skrevet 7. september 2011 Hei. Jeg sliter litt med å få en oppramstype til å fungere i Java. Jeg har definert de statiske variablene: class Ansatt { enum Kjoenn {MANN, KVINNE}; static final double NORMAL_ARBEIDSUKE = 37.5; static int antallKvinner; static int antallMenn; Kjoenn gender; I tillegg til en utskriftsmetode har jeg også lagt inn følgende metode: static void registrerAnsattKjønn(Kjoenn gender) { switch(gender) { case MANN: antallMenn++; break; case KVINNE: antallKvinner++; break;} } I selve klienten har jeg imidlertid problemer med å få denne metoden til å virke. Dersom jeg f.eks. har opprettet en nytt objekt av Ansatt-klassen, Ansatt1, og skriver: Ansatt1.registrerAnsattKjønn(KVINNE); Så får jeg opp feilmeldingen: KVINNE cannot be resolved to a variable. Hva er det som gjør dette? Er det noe jeg har gjort feil i selve utarbeidelsen av metoden for oppramstypen? Jeg er ikke så vant til å bruke dette verktøyet i Java, så jeg setter veldig stor pris på om noen kan hjelpe meg med dette. PS: Dette er selvsagt bare en liten del av hele programmet, men dette er det eneste aspektet ved programmet som jeg fortsatt får feilmeldinger på. Dersom det er ønskelig at jeg poster programmet i sin helhet, så bare gi beskjed. På forhånd tusen takk for all hjelp! Lenke til kommentar
Dinosauromann Skrevet 7. september 2011 Del Skrevet 7. september 2011 (endret) Du må bruke Ansatt.KVINNE, og ikke bare KVINNE om du skal bruke verdien utenfor klassen. Endret 7. september 2011 av oln Lenke til kommentar
Degeim Skrevet 7. september 2011 Del Skrevet 7. september 2011 Jeg er ingen ekspert i Java, men du må kanskje skrive Ansatt1.registrerAnsattKjønn(Kjoenn.KVINNE); Eventuelt: Ansatt1.registrerAnsattKjønn(Ansatt.Kjoenn.KVINNE); // (Hvis utenfor klassen) Lenke til kommentar
Illus Skrevet 7. september 2011 Del Skrevet 7. september 2011 public class Test { enum Kjoenn { MANN, KVINNE }; static final double NORMAL_ARBEIDSUKE = 37.5; static int antallKvinner; static int antallMenn; Kjoenn gender; static void registrerAnsattKjønn(Kjoenn gender) { switch (gender) { case MANN: antallMenn++; break; case KVINNE: antallKvinner++; break; } } public static void main(String[] args) { registrerAnsattKjønn(Kjoenn.MANN); registrerAnsattKjønn(Kjoenn.MANN); registrerAnsattKjønn(Kjoenn.KVINNE); registrerAnsattKjønn(Kjoenn.KVINNE); registrerAnsattKjønn(Kjoenn.KVINNE); System.out.println("antallMenn: " + antallMenn); System.out.println("antallKvinner: " + antallKvinner); } } Lenke til kommentar
krje1980 Skrevet 7. september 2011 Forfatter Del Skrevet 7. september 2011 Takk for hjelpen! Dette funket helt fint . Glemte å legge til Kjoenn slik dere påpeker! 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å