Java main () Metoden forklart

1. Oversikt

Hvert program trenger et sted å starte utførelsen; snakker om Java-programmer, det er det hoved- metode. Vi er så vant til å skrive hoved- metode under kodesesjonene våre, at vi ikke en gang tar hensyn til detaljene. I denne raske artikkelen vil vi analysere denne metoden og vise noen andre måter å skrive den på.

2. Vanlig signatur

Den vanligste hovedmetodemalen er:
public static void main (String [] args) {}

Det er slik vi har lært det, det er slik IDE automatisk fullfører koden for oss. Men det er ikke den eneste formen denne metoden kan anta, det er noen gyldige varianter vi kan bruke og ikke alle utviklere tar hensyn til dette faktum.

Før vi dykker ned i disse metodesignaturene, la oss se på betydningen av hvert nøkkelord for den vanlige signaturen:

  • offentlig - tilgangsmodifikator, noe som betyr global synlighet
  • statisk - metoden kan nås rett fra klassen, vi trenger ikke å instantiere et objekt for å ha en referanse og bruke det
  • tomrom - betyr at denne metoden ikke returnerer en verdi
  • hoved- - navnet på metoden, det er identifikatoren JVM ser etter når du kjører et Java-program

Når det gjelder argumenterer parameter, representerer den verdiene mottatt av metoden. Slik sender vi argumenter til programmet når vi først starter det.

Parameteren argumenterer er en rekke Strings. I følgende eksempel:

java CommonMainMethodSignature foo bar

vi kjører et Java-program som heter CommonMainMethodSignature og passerer to argumenter: foo og bar. Du kan få tilgang til disse verdiene inne i hoved- metode som argumenter [0] (å ha foo som verdi) og args [1] (å ha bar som verdi).

I neste eksempel sjekker vi args for å bestemme om test- eller produksjonsparametere skal lastes inn:

public static void main (String [] args) {if (args.length> 0) {if (args [0] .equals ("test")) {// load test parameters} else if (args [0] .equals ("produksjon")) {// last produksjonsparametere}}}

Det er alltid godt å huske at IDEer også kan føre argumenter til programmet.

3. Ulike måter å skrive på hoved() Metode

La oss sjekke noen forskjellige måter å skrive hoved- metode. Selv om de ikke er veldig vanlige, er de gyldige signaturer.

Merk at ingen av disse er spesifikke for hoved- metoden, kan de brukes med hvilken som helst Java-metode, men de er også en gyldig del av hoved- metode.

De firkantede parentesene kan plasseres i nærheten String, som i den vanlige malen, eller i nærheten argumenterer på hver side:

public static void main (String [] args) {} 
public static void main (String args []) {}

Argumenter kan vises som vargs:

public static void main (String ... args) {}

Vi kan til og med legge til strictfp for hoved() metode, som brukes for kompatibilitet mellom prosessorer når du arbeider med flytende punktverdier:

public strictfp static void main (String [] args) {}

synkronisert og endelig er også gyldige nøkkelord for hoved- metode, men de vil ikke ha noen effekt her.

På den andre siden, endelig kan brukes på argumenterer for å forhindre at matrisen endres:

public static void main (final String [] args) {}

For å avslutte disse eksemplene kan vi også skrive hoved- metode med alle de ovennevnte nøkkelordene (som du selvfølgelig sannsynligvis aldri vil bruke i en praktisk applikasjon):

endelig statisk synkronisert striktfp ugyldig hoved (sluttstreng [] args) {}

4. Å ha mer enn en hoved() Metoder

Vi kan også definere mer enn en hoved- metoden i applikasjonen vår.

Faktisk bruker noen det som en primitiv testteknikk for å validere individuelle klasser (selv om testrammer som JUnit er mye mer indikert for denne aktiviteten).

For å spesifisere hvilken hoved- metoden JVM skal utføre som inngangspunkt for applikasjonen vår, bruker vi MANIFEST.MF fil. Inne i manifestet kan vi indikere hovedklassen:

Hovedklasse: mypackage.ClassWithMainMethod

Dette brukes mest når du oppretter en kjørbar .krukke fil. Vi indikerer hvilken klasse som har hoved- metode for å starte kjøringen gjennom manifestfilen som ligger på META-INF / MANIFEST.MF (kodet i UTF-8).

5. Konklusjon

Denne opplæringen beskrev detaljene i hoved- metoden og noen andre former den kan anta, selv de som ikke er veldig vanlige for de fleste utviklere.

Husk at, Selv om alle eksemplene vi har vist er gyldige når det gjelder syntaks, tjener de bare det pedagogiske formålet og mesteparten av tiden holder vi oss til den vanlige signaturen for å gjøre jobben vår.


$config[zx-auto] not found$config[zx-overlay] not found