📜  Java中main()的有效变体

📅  最后修改于: 2020-03-30 06:37:21             🧑  作者: Mango

以下是有效的main()的不同变体。

  1. 默认原型:以下是用Java编写main()的最常用方法。
    class Test
    {
        public static void main(String[] args)
        {
            System.out.println("Main Method");
        }
    }

    输出:

    Main Method

    主要语法的含义:

    public:   JVM可以在任何地方执行该方法。
    static:   可以在没有对象的情况下调用main方法。
    void:     main方法不返回任何内容。
    main():   在JVM中配置的名称。
    String []:接受命令行参数。
  2. 修饰符的顺序:我们可以在main()中交换static和public的位置。
    class Test
    {
        static public void main(String[] args)
        {
            System.out.println("Main Method");
        }
    }
    

    输出:

    Main Method
  3. String数组参数的变体:我们可以将方括号放在不同的位置,并且可以将varargs(…)用作字符串参数。
    class Test
    {
        public static void main(String[] args)
        {
            System.out.println("Main Method");
        }
    }

    输出:

    Main Method
    class Test
    {
        public static void main(String []args)
        {
            System.out.println("Main Method");
        }
    }
    

    输出:

    Main Method
    class Test
    {
        public static void main(String args[])
        {
            System.out.println("Main Method");
        }
    }
    

    输出:

    Main Method
    class Test
    {
        public static void main(String...args)
        {
            System.out.println("Main Method");
        }
    }

    输出:

    Main Method
  4. Final Modifier String参数:我们可以将String args []作为final。
    class Test
    {
        public static void main(final String[] args)
        {
            System.out.println("Main Method");
        }
    }
    

    输出:

    Main Method
  5. 对静态main方法的Final修饰符:我们可以将main()作为final。
    class Test
    {
        public final static void main(String[] args)
        {
            System.out.println("Main Method");
        }
    }
    

    输出:

    Main Method
  6. 静态主要方法的synced关键字:我们可以使main()同步。
    class Test
    {
        public synchronized static void main(String[] args)
        {
            System.out.println("Main Method");
        }
    }
    

    输出:

    Main Method
  7. 静态主要方法的strictfp关键字: strictfp可用于限制浮点计算。
    class Test
    {
        public strictfp static void main(String[] args)
        {
            System.out.println("Main Method");
        }
    }
    

    输出:

    Main Method
  8. 所有上述关键字与静态main方法的组合:
    class Test
    {
        final static synchronized strictfp static void main(String[] args)
        {
            System.out.println("Main Method");
        }
    }
    

    输出:

    Main Method
  9. 重载Main方法:我们可以使用不同类型的参数重载main()。
    class Test
    {
        public static void main(String[] args)
        {
            System.out.println("Main Method String Array");
        }
        public static void main(int[] args)
        {
            System.out.println("Main Method int Array");
        }
    }
    

    输出:

    Main Method String Array
    
  10. Main方法的继承: JVM执行main()且没有任何错误。
    class A
    {
        public static void main(String[] args)
        {
            System.out.println("Main Method Parent");
        }
    }
    class B extends A
    {
    }
    

    编译器生成两个类文件A.class和B.class。当我们执行两个.class中的任何一个时,JVM都将正确执行。