Может ли метод main () класса быть вызван из другого класса в Java - PullRequest
40 голосов
/ 31 марта 2010

Может ли метод main() класса быть вызван в другом классе в Java?

например.

class class1{

  public static void main(String []args){

  }

}

class class2{

  public static void main(String []args){
      class1.main();
  }

}

Ответы [ 5 ]

37 голосов
/ 31 марта 2010

Если вы хотите вызвать метод main другого класса, вы можете сделать это следующим образом, если я понимаю вопрос.

  public class MyClass {

    public static void main( String[] args ) {

      System.out.println("main() method of MyClass");
      OtherClass obj=new OtherClass();
    }
  }

  class OtherClass {

    public OtherClass() {

      // Call the main() method of MyClass
      String[] arguments = new String[] {"123"};
      MyClass.main(arguments);
    }
  }
14 голосов
/ 06 июля 2015

если я правильно понял ваш вопрос ...

Метод main () определен в классе ниже ...

public class ToBeCalledClass{

   public static void main (String args[ ]) {
      System.out.println("I am being called");
   }
}

вы хотите вызвать этот метод main в другом классе.

public class CallClass{

    public void call(){
       ToBeCalledClass.main(null);
    }
}
2 голосов
/ 31 марта 2010

да, но только если main объявлен как public

1 голос
/ 31 марта 2010

Да, если оно общедоступно и вы передаете правильные аргументы Смотрите эту ссылку для получения дополнительной информации. http://www.codestyle.org/java/faq-CommandLine.shtml#mainhost

0 голосов
/ 31 марта 2010

Конечно. Вот совершенно глупая программа, которая демонстрирует рекурсивный вызов main.

public class main
{
    public static void main(String[] args)
    {
        for (int i = 0; i < args.length; ++i)
        {
            if (args[i] != "")
            {
                args[i] = "";
                System.out.println((args.length - i) + " left");
                main(args);
            }
        }

    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...