Aloittelija ihmettelee tätä

fdsfdsdfdf

public class Laskin {
public int x = 0;
public int y = 0;
public int p = 0;

   
public Laskin(int a, int b) {

x = a;
y = b;

}

public int laske() {
p = x y;
return p;
}

}


Tämä toimii monen kokeilun jälkeen. Mutta miksi allaoleva koodi ei toiminutkaan vaan köääntäjä ilmotti ettei llöydä p-muuttujaa:

public class Laskin {
public int x = 0;
public int y = 0;


   
public Laskin(int a, int b) {

x = a;
y = b;



}


public int laske() {
int p = x y;
return p;
}


}

tutoorialissakin tuo int p on tehty vaan että on laitettu se pelkästään tuon metodin sisään eikä tehty sitä tuonne ylös hmmm... :S :S

4

458

    Vastaukset 4

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • myöskin tuotanoin

      jos muutan laske metodin tyypiksi void niin en tarvitse enäää return p; riviä. Onko parempi kuitenkin tehdä se int tyypiksi että tietää että on kokonaisluku

      • -.-.-.-.-.-.

        Sillä metodin edessä olevalla void, int, tms. tyypillä kerrotaan vain paluu arvon tyyppi. Void tarkoittaa sitä, ettei metodi palauta mitään. Joudut kysymään itseltäsi, haluatko metodin palauttavan vastauksen vai et, kun mietit sitä otatko returnin pois vai et.

        Se toinen toteutuksesi Laskin -luokasta olisi täysin hyödytön jos et palauta laskennan tulosta (eli otat return -lauseen pois). Ensimmäisessä toteutuksessasi voit hakea laskennan tuloksen myös luokan julkisen p -muuttujan kautta, joten siinä voit ottaa return -lauseen pois ja määrätä metodin paluu arvon void -tyyppiseksi. Luokan käyttö on kuitenkin huomattavasti hankalampaa jos et palauta laskennan tulosta. Alla esimerkki miten ensimmäisen Laskin -luokkasi käyttö muuttuu jos otat return lauseen metodista pois.

        --- ALKAA: TAPAUS 1 ---

        Laskin laskin = new Laskin(3, 4);
        System.out.println("Tulos = " laskin.laske());

        ---- LOPPUU ---

        --- ALKAA: TAPAUS 2 (Kun metodi ei palauta arvoa) ---

        Laskin laskin = new Laskin(3, 4);
        laskin.laske();
        System.out.println("Tulos = " laskin.p);

        ---- LOPPUU ---


    • -.-.-.-.-.-.

      Kyllä toimii, kokeile vaikka alla olevaa koodia.

      --- ALKAA ---

      public class Laskin {
         public int x = 0;
         public int y = 0;


         public Laskin(int a, int b) {
            x = a;
            y = b;
         }

         public int laske() {
            int p = x y;
            return p;
         }
         
         public static void main(String[] arg) {
            System.out.println((new Laskin(4, 5)).laske());
         }
      }

      --- LOPPUU ---

    • -.-.-.-.-.-.

      Luin viestisi uusiksi ja täytyy sanoa, että virheesi on siinä koodissa joka käyttää Laskin -luokkaa. Laskin -luokkaa käyttävä koodisi yrittää käyttää Laskin -luokassa olevaa julkista p -muuttujaa johonkin tarkoitukseen (esim. vastauksen tulostukseen), ja koska toisessa esimerkissä olet poistanut kyseisen muuttujan herjaa kääntäjä luonnollisesti tällöin virheellä. Jos katsot tarkemmin kääntäjän antamaa virheilmoitusta huomaat mihin .java tiedostoon ja mille riville virhe kohdistuu.

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Nyt se syksy on sitten alkanut

      Esimerkiksi tänään sataa aamusta iltaan, ja nytkin.
      Maailman menoa
      72
      1138
    2. Minä en ole koskaan

      Rakastanut ketään toista yhtä paljon kuin sinua
      Ikävä
      98
      1084
    3. Tiesitkö? Jorma Uotisen EX-rakas on Helena Lindgren - Nämä ovat välit nyt: "Me ollaan..."

      Jorma Uotinen ja Helena Lindgren olivat avoliitossa v. 1982-1999. Pariskunta oli aikansa näyttävä julkkispari, missä i
      Kotimaiset julkkisjuorut
      23
      953
    4. Olet nainen ollut vaikein rasti

      Eniten olet tunteitani myllännyt ja niitä kuluttanut, ja tuottanut. 🤔
      Ikävä
      67
      943
    5. Anteeksi J-mies

      Anteeksi että myötävaikutin siihen että rakastuit minuun, jota et voi koskaan saada. Viimeksi kun näimme ja katselimme t
      Ikävä
      126
      880
    6. Kuhmolainen opettaja tuomittu vainoamisesta

      https://yle.fi/a/74-20248184 ”Kuusikymppinen kuhmolaisnainen piinasi naapureitaan lähes kahdeksan vuoden ajan. Nainen
      Kuhmo
      22
      847
    7. Vähän pitää

      Kiusia ja näyttää
      Ikävä
      129
      828
    8. Riittääkö mahkut

      Kaivattuusi 🤭.
      Ikävä
      58
      795
    9. Kenen viisautta on ollut laittaa tie väärällä murskeella pilalle

      Kenen viisautta on ollut kun Siimeksen/Kylmänpurontie pantu pilalle kun on ajettu liian karkeaa mursketta. Rengasliikke
      Hyrynsalmi
      27
      761
    10. Elämäni biisi -paljastus: Tänä lauantaina 26.9. nämä julkkikset istahtavat sinisille sohville!

      Katsotko Elämäni biisiä? Elämäni biisi on monen suomalaisen suosikki. Vieraslista lauantaina 26.9. tarjoilee vieraita m
      Tv-sarjat
      6
      708
    11. Taidat olla

      Luovuttanut jo minun suhteeni osalta?
      Ikävä
      45
      686
    12. Minä muistan

      Minä muistan sinut nauravana. Sellaisena, joka sai tavallisenkin hetken tuntumaan vähän kevyemmältä, kuin huoneeseen ol
      Ikävä
      46
      681
    13. Koska Martina viettää aikaansa lapsiensa kanssa

      Äiti vaan juoksee miehen perässä Tallinnassa, Lontoossa, Turussa. Kyllä oli kätilö oikeassa, kun sanoi, että ei olisi ka
      Kotimaiset julkkisjuorut
      142
      632
    14. Mitä muuta on olemassa kuin lisääntyminen

      Jos mies ei pääse lisääntymään niin mikä hänen osansa elämässä on? mitä jää jäljelle? Hän on vain muiden palvelija kok
      Sinkut
      129
      630
    15. Mä voisin rakastua noihin tähti silmiin

      Katseesi on niin lumoava nainen💚.
      Ikävä
      19
      627
    16. Ähtäri on taas TV: n ja radion ykkösuutinen

      Uusi podcast on julkaistu ja on nyt kuunneltavissa. Mot on tehnyt hyvää työtä! Mikko Savola ja kepu ei ota mitään vast
      Ähtäri
      48
      620
    17. Jos tullaan toisiamme vastaan, niin

      pitäiskö pysähtyä ja onnitella?
      Ikävä
      48
      604
    18. Siinä kävi mies nyt niin että tämä ämmä muuttaa ulkomaille

      Vuonojen maa kutsuu, joten ei hätää. Et kuule minusta enää. 😂 Lycka till! Ämmä riittää.
      Ikävä
      80
      602
    19. Voisiko vielä välillemme jotain kehittyä

      Vai heihei ja ei nähdä enää.
      Ikävä
      35
      600
    20. Pahkalassa tapahtuu

      Mitäs on tapahtunut yöllä pahkalan kerrostaloilla.oli poliisia ja ambulanssia taas vaihteeksi
      Parkano
      12
      589
    Aihe