Uitleg van ‘String args[]’ en static in ‘public static void main(String[] args)’

Hoe kun je aan een beginnerheel goed de betekenis van String args[]en het gebruik van staticin het volgende uitleggen uittreksel?

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

Antwoord 1, autoriteit 100%

Ik zou een beginner verwijzen naar het Wiki-artikel over de hoofdfunctieen vervolgens aanvullen hiermee.

  • Java begint pas een programma uit te voeren met de specifieke public static void main(String[] args)handtekening, en men kan een handtekening bedenken zoals hun eigen naam – zo kan Java vertel het verschil tussen de main()van iemand anders en de echte main().

  • String[] argsis een verzameling Strings, gescheiden door een spatie, die in het programma op de terminal kunnen worden getypt. Vaak zal de beginner deze variabele niet gebruiken, maar hij is er altijd voor het geval dat.


Antwoord 2, autoriteit 92%

Ik zou uit elkaar gaan

public static void main(String args[])

in delen:

public

Het betekent dat je deze methode kunt aanroepen van buiten de klasse waarin je je momenteel bevindt. Dit is nodig omdat deze methode wordt aangeroepen door het Java-runtimesysteem dat zich niet in je huidige klasse bevindt.


static

Wanneer de JVM een oproep doet naar de hoofdmethode, is er geen object dat bestaat voor de klasse die daarom wordt gebeld om een ​​statische methode te hebben om aanroep van de klas mogelijk te maken.


void

Java is platformonafhankelijke taal en als het een waarde zal retourneren, kan de waarde verschillende dingen betekenen voor verschillende platforms. Ook zijn er andere manieren om het programma op een multithreaded systeem te verlaten. gedetailleerde uitleg .


main

Het is slechts de naam van de methode. Deze naam is vast en zoals het wordt opgeroepen door de JVM als toegangspunt voor een toepassing.


String args[]

Dit zijn de argumenten van typekring die uw Java-applicatie accepteert wanneer u het uitvoert.


Antwoord 3, Autoriteit 44%

public static void main(string [] args)

public-ITEIT De toegangspecifieer betekent van elke waar we toegang krijgen tot;
static-Access Modifier betekent dat we deze methode rechtstreeks kunnen bellen met behulp van een klasnaam zonder een voorwerp ervan te maken;
void– het is het retourtype;
main– Method Name
string [] args– het accepteert alleen stringstype van argument … en slaat het op in een stringarray


Antwoord 4, Autoriteit 24%

  • public: het is een toegangspeciferie die betekent dat deze door publiek wordt geopend.
  • static: Het is toegangsmodificator die betekent dat het Java-programma wordt geladen, dan maakt het automatisch de spatie in het geheugen.
  • void: Het is een retourtype I.E IT retourneert geen enkele waarde.
  • main(): het is een methode of een functienaam.
  • String args[]: het is een opdrachtregelargument Het is een verzameling variabelen in het string-formaat.

Antwoord 5, Autoriteit 9%

Als ik dit aan iemand uitlegde, zou ik zeggen dat we er later voor zullen komen, moet je weten dat de manier om je programma te laten gebruiken:

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

Aangenomen dat hij / zij weet wat een array is, zou ik zeggen dat de args een array array is en je kunt een aantal coole voorbeelden laten zien.

Nadat u een beetje bent gegaan over Java / JVM en dat spul, zou u uiteindelijk naar modifiers komen om te statisch en het publiek.

Dan kunt u wat tijd besteden aan het praten over de betekenis van deze IMHO.

U zou andere “coole” dingen kunnen noemen, zoals varargs die u in latere versies van Java kunt gebruiken.

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

Antwoord 6, Autoriteit 3%

Ik dacht alleen maar dat ik op deze zou willen chippen. Het is echter perfect beantwoord door anderen.

De volledige hoofdmethodeaangifte zou moeten zijn:

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

De args worden definitief verklaard omdat ze technisch genoeg niet moeten worden gewijzigd. Het zijn consoleparameters gegeven door de gebruiker.

U moet meestal aangeven dat de hoofdtijdsuitzonderingen, zodat stapelsporen gemakkelijk kunnen worden gechoed om te console zonder dat u E.PRINTSTACKRACE () ETC wilt doen.

Wat betreft array-syntaxis. Ik geef de voorkeur aan deze manier. Ik veronderstel dat het een beetje lijkt op het verschil tussen Frans en Engels.
In het Engels is het “een zwarte auto”, in het Frans is het “een zwarte auto”.
Wat is het belangrijkste zelfstandig naamwoord, auto of zwart?

Ik hou niet van dit soort dingen :

String blah[] = {};

Wat hier belangrijk is, is dat het een String-array is, dus het zou moeten zijn

String[] blah = {};

bla is maar een naam. Persoonlijk vind ik het een beetje een vergissing in Java dat arrays soms op die manier gedeclareerd kunnen worden.


Antwoord 7, autoriteit 3%

Om de beginnershouding te behouden, kun je uitleggen dat de hele opdrachtregel automatisch wordt opgesplitst in een array van String (de String[]).

Voor staticmoet je uitleggen dat het geen veld is zoals een ander: het is uniek in de JVM, zelfs als je duizend instanties van de klasse hebt

Dus mainis statisch, omdat het de enige manier is om het te vinden (gekoppeld in zijn eigen klasse) in een jar.

nadat je naar codering kijkt en je werk begint.


Antwoord 8

Het normale gebruik van static is om rechtstreeks toegang te krijgen tot de functie zonder dat er objecten worden gemaakt. Hetzelfde als in java main, we konden geen object maken voor die klasse om de main-methode aan te roepen. Het wordt automatisch uitgevoerd. Als we handmatig willen uitvoeren, kunnen we aanroepen door main() binnen de klasse en ClassName.main van buiten de klasse te gebruiken.

Other episodes