Java-menetelmän main() käyttö:
main() on jokaisen Java-ohjelman alussa ja lopussa. Vain sen soveltamisalaan kuuluvat lauseet otetaan huomioon suorituksen aikana. Siksi on niin tärkeää kiinnittää huomiota menetelmän syntaksin jokaiseen yksityiskohtaan. Jos se on virheellinen, ohjelmaa ei suoriteta.
Mikä on Java-kielessä käytetty main()?
Riippumatta siitä, minkä projektin haluat toteuttaa ohjelmointikielellä tai kuinka tiivistä tai laajaa koodia käytät siihen, Java-kielessä jokainen sovellus alkaa main(). Jos se ei ole käytettävissä, koodia ei voida suorittaa. Ennen kuin tämä siirretään main(), Java Virtual Machine (JVM) ladataan muistiin ja koodi käännetään. Kun nämä vaiheet on suoritettu, koodi tarkistetaan Java main() -metodilla. Sen jälkeen se toivottavasti suoritetaan oikein. Periaatteessa on myös mahdollista käyttää useita näistä metodeista, jolloin enimmäismäärä on yksi päämetodi luokkaa kohti.
Mikä on Java-menetelmän main() syntaksi?
Java main() -menetelmän syntaksi on aina sama. Se koostuu useista tärkeistä osista ja näyttää tältä:
public static void main(String[] args)javaNämä komponentit suorittavat seuraavat toiminnot:
public: Tämä komponentti varmistaa, että luokkaan pääsee myös ulkopuolelta.static: Tämä osa määrittelee menetelmän staattiseksi, mikä tarkoittaa, että se voi olla olemassa ilman, että tiettyä luokkaa edeltävä objekti on luotu etukäteen.void: Tämä varmistaa, että Java-menetelmänmain()ei tarvitse palauttaa arvoa.main: Java Virtual Machine käyttää tätä tunnistamaan menetelmän, kun se suorittaa ohjelmaa.String[] args: Tämä on taulukko, johon komentoriviparametrit tallennetaan ja vastaanotetaan.
Miksi main():n yksittäiset komponentit ovat tärkeitä?
Jotta voimme paremmin ymmärtää Java main() -menetelmän toimintaa ja kaikkien komponenttien tärkeyttä, tarkastelemme niitä yksitellen seuraavissa osioissa. Tärkeintä on, että näytämme, mitä tapahtuu, jos osa allekirjoituksesta puuttuu. Tätä varten valitsemme hyvin yksinkertaisen koodiesimerkin, jonka tulostamme Java-komennolla System.out.println.
public class main {
public static void main(String[] args) {
System.out.println("Here is your sample text.");
}
}javaKun suoritat tämän koodin, saat seuraavan tuloksen:
Here is your sample text.javapublic
public toimii pääsyoikeuden määrittäjänä ja ilmoittaa Java-virtuaalikoneelle, missä vastaava ohjelma suoritetaan. On myös muita pääsyoikeuden määrittäjiä, kuten default, private ja protected. Jos kuitenkin käytät näitä Java-kielessä main() kanssa, saat virheilmoituksen:
public class main {
private static void main(String[] args) {
System.out.println("Here is your sample text.");
}
}javaVastaava kysymys on:
Error: Main method not found in class, please define the main method as:
public static void main(String[] args)
or a JavaFX application class must extend javafx.application.ApplicationjavaTämä virheilmoitus tarkoittaa, että menetelmään ei ole julkista pääsyä.
static
Avainsana static vahvistaa, että käytetty menetelmä on staattinen. Tämä tarkoittaa, että sitä voidaan käyttää luokkien instansseista riippumatta. Jos poistat tämän komponentin, koodi näyttää tältä:
public class main {
public void main(String[] args) {
System.out.println("Here is your sample text.");
}
}javaTässäkin tapauksessa saat virheilmoituksen:
Error: Main method is not static in class test, please define the main method as:
public static void main(String[] args)javavoid
void on avainsana, joka määrittää, että Java-kielessä main() ei saa palauttaa mitään arvoja. Koska main() on Java-ohjelman alku- ja loppupiste, renderointi on tarpeetonta. Näin koodi näyttää ilman void:
public class main {
public static main(String[] args) {
System.out.println("Here is your sample text.");
}
}javaTämä on virheilmoitus, jonka saat, jos jätät void pois:
Error: Main method must return a value of type void in class Main, please define the main method as:
public static void main(String[] args)javamain
Jokaisessa Java-ohjelmassa JVM etsii ensin tunnisteen main. Se osoittaa, mistä suoritus alkaa ja mihin se päättyy. Heti kun Java-menetelmä main() on suorittanut tehtävänsä, ohjelma päättyy. Siksi allekirjoitusta ei saa koskaan muuttaa tai siihen ei saa lisätä mitään. Tässä on esimerkki allekirjoituksen muutoksesta:
public class main {
public static void replacementMain(String[] args) {
System.out.println("Here is your sample text.");
}
}javaKoska JVM ei löydä tunnistetta, se lopettaa ohjelman suoraan ja antaa seuraavan virheilmoituksen:
Error: Main method not found in class, please define the main method as:
public static void main(String[] args)
or a JavaFX application class must extend javafx.application.ApplicationjavaString[] args
String[] args vastaa java.lang.String- luokkaa ja sisältää tiedot, jotka se tallentaa merkkijonoarvoina. Jos jätät tämän määrityksen pois, koodi näyttää tältä:
public class main {
public static void main() {
System.out.println("Here is your sample text.");
}
}javaIlman argumenttia Java main() -menetelmää ei voida suorittaa. Tämän seurauksena saat jälleen seuraavan virheilmoituksen:
Error: Main method not found in class, please define the main method as:
public static void main(String[] args)
or a JavaFX application class must extend javafx.application.ApplicationjavaMitä vaihtoehtoisia kirjoitusasuja on olemassa?
Tässä esitetty koodiesimerkki on kirjoitettu yleisimmin käytetyn syntaksin mukaisesti. Voit kuitenkin helposti muokata sitä, jotta saat paremman yleiskuvan. Voit esimerkiksi sijoittaa hakasulkeet suoraan args jälkeen. Näin se näyttäisi:
public static void main(String args[]) { }javaVoit myös tallentaa argumentit muuttujina (varargs). Tätä varten sinun on käytettävä ellipsia:
public static void main(String...args) { }java9c664ccd7dcc248a5034e1fa751b7de8