Java - Things to know before your OCJP exam - Main Method Declaration


Following are valid main method declarations


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


Following declarations are not valid and result in compilation errors

    public void static main(String[] args)  // modifiers should be placed before return types.
    static void public main(String[] args) // modifiers should be placed before return types.
    public static void main(String[]) // reference name missing
    public static void main(String.. args) // 2 dots in the variable argument
    public static void main(String.   .. args) // variable argument declared wrong
    public static void main(String args...) // variable argument declared wrong


Following declarations gets compiled correctly but the program gives runtime exception / errors

    public static void main(String args) // Upon execution JVM looks for main with argument String array 
    public void main(String[] args) // static missing
    private static void main(String[] args) // method declared private and hence not accessible