Diese Frage wurde an jemanden gestellt, den ich kenne. Was ich mir vorstellen kann, ist, dass die Hauptmethode benötigt wird, um Befehlszeilenargumente als Methodenparameter zu akzeptieren.
Gibt es weitere Argumente zur Verteidigung von public static void main(String args[])
Methode?
Der Gedanke der Typinitialisierung für die "Haupt" -Klassenblockierung bis zum Abschluss der Anwendung ist abscheulich.
Könnten wir damit umgehen? Ich wage zu behaupten. Aber ich vermute, ich würde immer am Ende schreiben:
%Vor% ... und nichts anderes würde jemals EntryPoint
berühren.
Statische Initialisierer und die Hauptmethode haben unterschiedliche Absichten. Der Zweck der Hauptmethode besteht darin, nur dann aufgerufen zu werden, wenn die JVM mit der enthaltenden Klasse als Hauptklasse aufgerufen wird (oder wenn sie direkt vom Code aufgerufen wird). Der Zweck von statischen Initialisierungen besteht darin, eine Klasseninitialisierung durchzuführen. Initialisierer werden immer ausgeführt, aber es ist möglich, Hauptmethoden zu verwenden, die es nicht gibt.
Zusätzlich zu den oben genannten, die Notwendigkeit für main
(nicht die Eigenschaften der statischen Blöcke) ist, dass Ihre Anwendung einen Ausgangspunkt benötigt, das heißt, wenn Sie Ihre Anwendung ausführen, übergeben Sie die JVM Dutzende von Klassen und die JVM muss wissen, welche Methode zuerst aufgerufen werden muss, um Ihre Anwendung zu starten und auszuführen. Sie müssen angeben, an welchem Punkt sich Ihre Anwendung befindet, da die JVM sie nicht erraten kann. (Entschuldigung für mein Englisch)
Meistens wegen C.
Es wäre schön, wenn eine öffentliche statische Methode der Einstiegspunkt sein könnte, anstatt nur main
Tags und Links java