Start of Tutorial > Start of Trail > Start of Lesson |
Search
Feedback Form |
The first bold line in the following listing begins the definition of themain
method./** * The HelloWorldApp class implements an application that * simply displays "Hello World!" to the standard output. */ class HelloWorldApp { public static void main(String[] args) { System.out.println("Hello World!"); //Display the string. } }In the Java programming language, every application must contain a
main
method whose signature looks like this:You can name the argument whatever you want, but most programmers choose "args" as shown above. Also, the modifierspublic static void main(String[] args)public
andstatic
can be written in either order (public static
orstatic public
) but the convention is to usepublic static
as shown above.The method signature for the
main
method contains three modifiers:
public
indicates that themain
method can be invoked by any object. Controlling Access to Members of a Class covers the ins and outs of the access modifiers supported by the Java programming language.static
indicates that themain
method is a class method (as opposed to an instance method). Understanding Instance and Class Members talks about class methods and variables.void
indicates that themain
method doesn't return any value.
main
Method Gets Invoked
Themain
method is similar to themain
function in C and C++. When the interpreter executes an application, it starts by calling the class'smain
method. Themain
method then calls all the other methods required to run your application.If you try to invoke the interpreter on a class that does not have a
main
method, the interpreter refuses to run your program and displays an error message similar to this:In class NoMain: void main(String argv[]) is not defined
main
Method
As you can see from the following code snippet, themain
method accepts a single argument: an array of elements of typeString
.This array is the mechanism through which the runtime system passes information to your application. Each String in the array is called a command-line argument. Command-line arguments let users affect the operation of the application without recompiling it. For example, a sorting program might allow the user to specify that the data be sorted in descending order with this command-line argument:public static void main(String[] args)-descendingThe "Hello World" application ignores its command-line arguments, so there isn't much more to discuss here. However, you can get more information about command-line arguments, including the framework for a command-line parser that you can modify for your specific needs, in the Setting Program Attributes lesson.
Note to C and C++ Programmers: The number and type of arguments passed to themain
method in the runtime environment differ from the number and type of arguments passed to C and C++'smain
function. For further information refer to Command-Line Arguments in the Setting Program Attributes lesson.
Start of Tutorial > Start of Trail > Start of Lesson |
Search
Feedback Form |
Copyright 1995-2005 Sun Microsystems, Inc. All rights reserved.