Pääluokka ja Metodi
Pyyhkäise näyttääksesi valikon
Main-luokka
Aiemmin työskentelimme Main-nimisen luokan kanssa, mutta miksi?
Main toimii sovelluksen aloituspisteenä, eli käynnistyspisteenä. Juuri main-metodissa suoritetaan kaikki aiemmin kirjoitettu koodi. Nimen Main tulee pysyä muuttumattomana, jotta kääntäjä tunnistaa sen aloituspisteeksi.
main-metodin sisällä voidaan kirjoittaa useita metodeja, mutta niiden on oltava staattisia ja niissä on oltava static-avainsana.
Static
Avainsanaa static käytetään Javassa määrittelemään jäsen (muuttuja tai metodi), joka kuuluu luokalle itselleen, ei luokan oliolle. Tässä yksinkertainen selitys:
-
Staattiset muuttujat: Kun muuttuja määritellään staattiseksi, on olemassa vain yksi kopio kyseisestä muuttujasta, jota kaikki luokan oliot jakavat. Tämä tarkoittaa, että kaikki muutokset muuttujaan näkyvät kaikissa luokan olioissa;
-
Staattiset metodit: Kun metodi määritellään staattiseksi, sitä voidaan kutsua suoraan luokan kautta ilman, että tarvitsee luoda luokan oliota. Staattisia metodeja käytetään usein apumetodeina tai toiminnoissa, jotka eivät vaadi olion tietojen käsittelyä.
Tämän vuoksi pystyimme käyttämään Main-luokassa luotuja metodeja main-metodin sisällä. Meidän ei tarvinnut luoda Main-luokan oliota (vaikka se on mahdollista) kutsuaksemme sen metodeja.
Miksi main-metodin tulee olla staattinen Javassa?
main-metodi on Java-ohjelman aloituspiste, ja sen tulee olla staattinen, koska sen täytyy olla kutsuttavissa ilman luokan olion luomista. Kun Java Virtual Machine (JVM) alkaa suorittaa Java-ohjelmaa, se etsii main-metodia tietyllä allekirjoituksella (public static void main(String[] args)) aloittaakseen suorituksen. Koska main-metodia kutsutaan suoraan luokan kautta, sen on oltava staattinen, jotta JVM voi käyttää sitä ilman olion luomista.
1. Miksi luokkaa nimeltä Main käytetään ohjelmissamme?
2. Miksi main-metodi Javassa tulisi määritellä staattiseksi?
Kiitos palautteestasi!
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme