有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

在java中调用main中的main方法

我们可以在main中调用main方法吗

public static void main(String[] args) {
    main({"a","b","c"});
}

试图用谷歌搜索。找不到链接。 如果这个问题很琐碎,我很抱歉


共 (3) 个答案

  1. # 1 楼答案

    您只需像main(new String[1])这样传递参数,这一行将调用程序的main方法。但是如果你通过“new String[-1]”,这将给出NegativeArraySizeException。这里我给出了一个嵌套内部类的例子,我在其中调用Main方法:

    class Outer 
    {
        static class NestedInner
        {
    
            public static void main(String[] args)
            {
                System.out.println("inside main method of Nested class");
    
            }//inner main
        }//NestedInner
        public static void main(String[] args) 
        {
    
            NestedInner.main(new String[1] );//**calling of Main method**
            System.out.println("Hello World!");
        }//outer main
    }//Outer
    

    输出:- 嵌套类的内部主方法

    你好,世界

  2. # 2 楼答案

    你会得到^{}。如果你调用无尽的递归调用/深度函数递归

    Thrown when a stack overflow occurs because an application recurses too deeply.

    你需要像这样传递字符串数组

    main(new String[] {"a","b","c"});
    
  3. # 3 楼答案

    库加塔桑是对的

    是的,它确实给出了StackOverflow异常。我现在在Eclipse中测试了它

    class CallingMain
    {
        public static void main(String[] args)
        {
             main(new String[] {"a","b","c"});
        }
    }
    

    我有一个建议,我认为消除混淆的最好方法是尝试编码并运行它。帮助解决很多疑问