Klasy Java są wykonywane w szerszym kontekście (konkretna maszyna JVM, jak zauważyli inni). Poniżej przedstawiamy kilka możliwości:
We wszystkich przypadkach metoda main()
jest kanonicznym punktem wejścia do wykonywania kodu danej klasy. Od docs na java
JVM:
OPIS
Narzędzie java uruchamia aplikację Java. Robi to, uruchamiając środowisko wykonawcze Java, ładując określoną klasę i wywołując główną metodę tej klasy. Deklaracja metoda musi wyglądać następująco:
public static void main(String args[])
Metoda musi zostać uznany publicznej i statyczne, nie musi zwracać żadnej wartości, a to musi zaakceptować tablicę ciągów jako parametr. Domyślnie pierwszym argumentem nie będącym opcją jest nazwa klasy, która ma zostać wywołana. Należy użyć w pełni kwalifikowanej nazwy klasy. Jeśli podano opcję -jar, pierwszym nie-opcyjnym argumentem jest nazwa archiwum JAR zawierającego pliki klas i zasobów dla aplikacji z klasą uruchomienia wskazaną przez nagłówek manifestu klasy głównej.
Środowisko wykonawcze Java wyszukuje klasę uruchamiania i inne używane klasy w trzech zestawach lokalizacji: ścieżka klasy bootstrap, zainstalowane rozszerzenia i ścieżka klasy użytkownika.
Nieopisane argumenty po nazwie klasy lub pliku JAR są przekazywane do funkcji głównej.
Polecenie javaw jest identyczne z java, z tym że przy javaw nie ma skojarzonego okna konsoli. Użyj javaw, gdy nie chcesz, aby pojawiło się okno wiersza polecenia. Program uruchamiający javaw wyświetli jednak okno dialogowe z informacjami o błędach, jeśli uruchomienie z jakiegoś powodu nie powiedzie się.
stan Ty:
W powyższym kodzie, gdy zwrot jest używany to powinien wrócić do funkcji, która wywołuje główną funkcję.
Nie może być dowolny inna funkcja Java (w rzeczywistości zazwyczaj nie jest), która wywołuje funkcję main()
. Jest to konwencja dotycząca deklarowania dobrze znanego punktu wejścia. Jeśli JVM zostanie uruchomiona w celu uruchomienia metody klasy main()
, to po powrocie main()
JVM zostanie zakończona, z wyjątkiem kilku szczególnych przypadków, np. są inne wątki inne niż demony lub jest hak zamykający.
Możesz wywołać jedną główną metodę z drugiej, jak również wywołać ją w programie uruchamiającym. –