https://www.theserverside.com/blog/Coffee-Talk-Java-News-Stories-and-Opinions/main-Java-function-example-class-call
The entry point of a standalone Java application is the main method or function.
In the age of Servlets and JSPs, Java’s main function took a backseat to these technologies that were initialized with a call to their init() method, and invoked through calls to their doGet() or doPost() methods. For enterprise web developers using JakartaEE APIs, there was little need for Java’’s main function.
But with cloud-native applications built with Spring Boot or the Eclipse MicroProfile, developers are increasingly being exposed to the main method in Java, as it’s this function that typically kicks off the Tomcat, Jetty or WebSphere Liberty environment that hosts a microservice.
Java’s main method is composed of six terms — three reserved words, the main method name, a reference type and a variable name:
When you pull all of these details together, Java’s main method reads as follows:
public static void main(String[] args) { }
It’s worth noting that Java allows the square brackets to be placed on either the reference type or the variable name when an array is declared, so both of these derivations are valid:
public static void main(String[] args) { } public static void main(String args[]) { }
Similarly, the convention is to name the array args, although any valid variable name can be used. So, these derivations of Java’s main function are also valid:
public static void main(String[] arguments) { } public static void main(String configuration[]) { }
On Java certification exams, it’s not unusual for the test authors to attempt to confuse test takers by changing the name of the array or moving the square brackets from the left to the right. But in practice, the square brackets are typically placed on the String and the variable is typically named args.
Source code for a full class file that contains a Java main method would look as follows:
package com.mcnz.main.function; public class MyMainFunction { /* Java main function example */ public static void main(String[] args) { System.out.println("Hello from the Java Main Function!"); } }
The static keyword often confuses junior Java developers. A static variable is one that is not attached to an instance, and a static method is one that does not require an instance to be invoked. Instances can only be created after a Java application has started. If the main method was not static, it would require code to have already run in order for it to be invoked. The static keyword on the main method allows this function to be used as the entry point for an application, before any other Java code has run, and before any Java instances have been created.
Java and JavaScript are often confused with each other and serve very different purposes. JavaScript is embedded within a web page. Any code placed within an HTML script tag in a webpage will be executed. There is no need to code a JavaScript main function when doing web page development.
It’s also worth mentioning that Java developers don’t typically use the word ‘function.’ The term ‘main method’ is the most common vernacular used when referring to the entry point of a Java application.
29 Apr 2021