"static" =välitön harjoitustyön hylkääminen

miksi?

kurssilopputyön kohdalla opettaja sanoi joskus, että jos käyttää "static"ia muualla kuin kohdan "main" yhteydessä niin harjoitustyö hylätään armotta. mua on jäänyt vähän ihmetyttämään (nyt kun on taas javaa) että mitä tuo tekee ja miksei sitä voi käyttää muualla kuin tuon mainin yhteydessä?

6

799

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • if-else

      Static määrittelee attribuutin/metodin luokkakohtaiseksi. Ei-staattinen attribuutti/metodi on puolestaan oliokohtainen. Staattinen metodi/attribuuttia on kaikille luokan olioille yhteinen, jolloin sitä voidaan käyttää ilman oliota. Vastaavasti ei-staattista metodia/attribuuttia voidaan käyttää vain olion kautta. Staattinen attribuutti vastaa usein globaalia muuttujaa. Alla kaksi esimerkkiä, joissa toisessa asia on toteutettu staattisesti ja toisessa lähes sama asia dynaamisesti:

      --- ESIMERKKI ALKAA (Staattinen) ---

      public class Kissa {

         public static void ääntele() {
            System.out.println("Miauu...");
         }

         public static void main (String[] args) {
            Kissa.ääntele();
         }
      }

      --- ESIMERKKI LOPPUU ---

      --- ESIMERKKI ALKAA (Ei-staattinen) ---

      public class Kissa {
         
         public void ääntele() {
            System.out.println("Miauu...");
         }

         public static void main (String[] args) {
            Kissa mirre = new Kissa();
            mirre.ääntele();
         }
      }

      --- ESIMERKKI LOPPUU ---


      Mikään ei estä staattisten attribuuttien/metodien käyttöä muualla kuin mainissa, sillä onhan niitä käytetty jo Java kielen perusluokissa varsin runsaasti. Se ettei sitä saa käyttää lopputyössä selittyy varmaankin sillä, että sen avulla voidaan kiertää sellaisia asioita joita kurssilla on opetettu, jolloin opettajan on mahdotonta arvioida onko oppilas sisäistänyt kurssilla opetetut asiat vai ei. Toinen syy on se, että usein static käyttö johtaa huonoon koodiin/hyvän ohjelmointitavan vastaisiin ratkaisuihin (kuten tuossa yllä olevassa esimerkissä).

      • on luokan sisällä

        häh? Eihän luokkaa noin käytetä?


      • The Rat
        on luokan sisällä kirjoitti:

        häh? Eihän luokkaa noin käytetä?

        Totta kai Main on luokan sisällä.

        Vai kritisoitko sitä, että luokan sisällä luotiin uusi ilmentymä itsestään ja kutsuttiin sitä? Varmaan vain haluttiin alleviivata sitä oliomallia...


      • että Internettiäkään
        The Rat kirjoitti:

        Totta kai Main on luokan sisällä.

        Vai kritisoitko sitä, että luokan sisällä luotiin uusi ilmentymä itsestään ja kutsuttiin sitä? Varmaan vain haluttiin alleviivata sitä oliomallia...

        ei käytetä miltään komentoriveiltä, vaan gaafisista käyttöliittymistä siten, että sitä käyttöliittää aliohjelmineen kutsutaan pääohjelmasta yhdeltä tai korkeintaan useammalta riviltä. Ei pääohjelmaa sijoiteta minkään aliohjelmafunktion sisään: koko sen ohjelman funktio on se pääohjelma eikä päinvastoin. Liekö tuo edes käytännössä kääntyy saati toimii.


      • The Rat
        että Internettiäkään kirjoitti:

        ei käytetä miltään komentoriveiltä, vaan gaafisista käyttöliittymistä siten, että sitä käyttöliittää aliohjelmineen kutsutaan pääohjelmasta yhdeltä tai korkeintaan useammalta riviltä. Ei pääohjelmaa sijoiteta minkään aliohjelmafunktion sisään: koko sen ohjelman funktio on se pääohjelma eikä päinvastoin. Liekö tuo edes käytännössä kääntyy saati toimii.

        Kokeile kirjoittaa javaohjelma, jonka maini ei ole luokan sisällä ja kerro kääntyykö.

        Kyllä Internettiäkin muuten komentoriviltä käytetään - paljonkin. Oletko koskaan kuullut sellaisista komennoista kuin SCP, FTP, SSH, TELNET, PING, ...

        Käyttöliittymän kutsuminen pääohjelmasta? Mitä helvettiä sinä oikein selität?


      • mitä?
        että Internettiäkään kirjoitti:

        ei käytetä miltään komentoriveiltä, vaan gaafisista käyttöliittymistä siten, että sitä käyttöliittää aliohjelmineen kutsutaan pääohjelmasta yhdeltä tai korkeintaan useammalta riviltä. Ei pääohjelmaa sijoiteta minkään aliohjelmafunktion sisään: koko sen ohjelman funktio on se pääohjelma eikä päinvastoin. Liekö tuo edes käytännössä kääntyy saati toimii.

        Tajunnu yhtään, että mikä oli tämän viestin idea.
        Ehkä kannattaisi edes kerran lukea läpi oma viesti, ennen kuin sen lähettää foorumille.


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

    Luetuimmat keskustelut

    1. Suomalainen tutkimus paljasti oudon asian vasemmistolaisista - he häpeävät itseään

      Kyllä, asia on faktaa. Suomalainen tutkimus osoittaa, että vasemmistolaisina itseään pitävät kansalaiset häpeävät itseää
      Maailman menoa
      138
      3809
    2. Sosialismia Tampereella: Virallinen ilmiantolinja avautuu kaupungissa

      Nyt siis mennään mansessa ihan justiinsa samaan malliin kuin entisessä Neuvostoliitossa, jossa saattoi ilmiantaa naapuri
      Maailman menoa
      336
      2944
    3. Tätä et nähnyt tv:ssä: Frederik paljastaa - Totuus "haisevasta jäynästä" pehtoorille Farmilla

      Frederik veti ns. herneen nenään ja päätti kostaa pehtoorille. Mitäs mieltä olet Frederikin "aamutoimista"? Lue jutt
      Tv-sarjat
      8
      1855
    4. Ellen Jokikunnas paljastaa kyynelehtien Ralph-pojasta: "Apua..."

      Ellen Jokikunnaksen ja hänen puolisonsa Jari Raskin perheestä ja taloprojektista Italiassa kertova Unelmia Italiassa -sa
      Suomalaiset julkkikset
      5
      1588
    5. Oho! Vappu Pimiä teki "röyhkeän" teon - Onko sopivaa paljastaa tämä MasterChef-sarjasta?

      Vappu Pimiä on astunut MasterChef Suomi -keittiöön ja liittynyt ohjelman legendaariseen tuomaristoon Helena Puolakan ja
      Tv-sarjat
      4
      1069
    6. Mun kaikkialta häviäminen

      Ei liity sinuun. Muista se. ❤️ Mua kiusataan enkä mä enää jaksa.
      Ikävä
      71
      914
    7. Kaste tulisi tehdä apostolisella tavalla Ap. t. 2:38 mukaan

      Apostolit eivät kastaneet kolminaisuuden nimellä vaan Jeesuksen alkuperäisen käskyn mukaisesti: Ap. t. 2:38 Niin Pietar
      Kaste
      38
      854
    8. Onko teillä

      minkä tyyppisiä seksifantasioita kaivattunne kanssa?
      Ikävä
      44
      764
    9. Inhottaa ajatus siitä

      Miten monia olet pannut.
      Ikävä
      64
      724
    10. Kuhmossa rallit alkoi ennen aikojaan

      Paettiin polliisia törkeästi? Se tuo rallikiima on näemmä saavuttanu paikalliset tommi mäkiset kiljupäissään auton rat
      Kuhmo
      22
      708
    Aihe