Можем ли мы перегрузить основной метод в Java?

Можем ли мы перегрузить метод main() в Java?

Вы можете перегрузить метод main() , но только public static void main(String[] args) будет использоваться, когда ваш class запускается JVM. Например:

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

Это всегда будет печатать main(String[] args) при запуске java Test ... из командной строки, даже если вы укажете один или два аргумента командной строки.

Разумеется, вы можете вызывать метод main() самостоятельно из кода – в этот момент будут применяться нормальные правила перегрузки.

EDIT: обратите внимание, что вы можете использовать подпись varargs, так как это эквивалентно с точки зрения JVM:

 public static void main(String... args) 

Да, вы можете перегружать основной метод в Java. Но при запуске вашей программы программа не выполняет перегруженный основной метод, вы должны вызвать перегруженный основной метод из фактического основного метода.

это означает, что основной метод выступает в качестве точки входа для интерпретатора java для запуска выполнения приложения. где в качестве загруженного основного необходимо вызвать из основного.

Да, путем перегрузки метода. Вы можете иметь любое количество основных методов в classе путем перегрузки метода. Давайте посмотрим на простой пример:

 class Simple{ public static void main(int a){ System.out.println(a); } public static void main(String args[]){ System.out.println("main() method invoked"); main(10); } } 

Он даст следующий результат:

 main() method invoked 10 

ДА, вы можете перегрузить main ()

Но, чтобы быть ясным – хотя вы можете перегружать основной, только версия со стандартной подписью будет исполняться как приложение из командной строки. например

 public static void main(String[] args,int a){ // some code } 2)public static void main(String[] args){//JVM will call this method to start // some code } 

Да, вы можете перегружать основной метод в Java. вы должны вызвать перегруженный основной метод из фактического основного метода.

Да, ты можешь.

main метод в Java не является внеземным методом. Помимо того, что main() аналогичен любому другому методу и может быть перегружен аналогичным образом, JVM всегда ищет сигнатуру метода для запуска программы.

  • Обычный main метод действует как точка входа для JVM для запуска выполнения программы.

  • Мы можем перегрузить main метод в Java. Но программа не
    выполнить перегруженный main метод при запуске вашей программы, нам нужно вызвать перегруженный main метод только из основного метода.

     // A Java program with overloaded main() import java.io.*; public class Test { // Normal main() public static void main(String[] args) { System.out.println("Hi Geek (from main)"); Test.main("Geek"); } // Overloaded main methods public static void main(String arg1) { System.out.println("Hi, " + arg1); Test.main("Dear Geek","My Geek"); } public static void main(String arg1, String arg2) { System.out.println("Hi, " + arg1 + ", " + arg2); } } 

    Действительные варианты main () в Java

да, мы можем перегружать основной метод. основной метод не должен быть статическим основным методом.

Да, основной метод может быть перегружен. Перегруженный основной метод должен вызываться изнутри «public static void main (String args [])», поскольку это точка входа, когда class запускается JVM. Также перегруженный основной метод может иметь любой classификатор, как обычный метод.

Это совершенно законно:

 public static void main(String[] args) { } public static void main(String argv) { System.out.println("hello"); } 

Да. Метод main () может быть перегружен. Я попытался вставить часть кода, чтобы ответить на ваш вопрос.

 public class Test{ static public void main( String [] args ) { System.out.println( "In the JVMs static main" ); main( 5, 6, 7 ); //Calling overloaded static main method Test t = new Test( ); String [] message = { "Subhash", "Loves", "Programming" }; t.main(5); t.main( 6, message ); } public static void main( int ... args ) { System.out.println( "In the static main called by JVM's main" ); for( int val : args ) { System.out.println( val ); } } public void main( int x ) { System.out.println( "1: In the overloaded non-static main with int with value " + x ); } public void main( int x, String [] args ) { System.out.println( "2: In the overloaded non-static main with int with value " + x ); for ( String val : args ) { System.out.println( val ); } } } 

Вывод:

 $ java Test In the JVMs static main In the static main called by JVM's main 5 6 7 1: In the overloaded non-static main with int with value 5 2: In the overloaded non-static main with int with value 6 Subhash Loves Programming $ 

В приведенном выше коде как статический метод, так и нестатическая версия основных методов перегружены для демонстрационной цели. Обратите внимание, что, написав JVMs main, я хочу сказать, что это основной метод, который JVM использует сначала для выполнения программы.

Да, вы можете перегружать основной метод, но интерпретатор всегда будет искать правильный синтаксис основного метода, чтобы начать выполнение. И да, вы должны вызвать перегруженный основной метод с помощью объекта.

 class Sample{ public void main(int a,int b){ System.out.println("The value of a is " +a); } public static void main(String args[]){ System.out.println("We r in main method"); Sample obj=new Sample(); obj.main(5,4); main(3); } public static void main(int c){ System.out.println("The value of c is" +c); } } The output of the program is: We r in main method The value of a is 5 The value of c is 3 

Да. Согласно моей точке зрения, мы можем перегружать основной метод, но перегрузка метода – это все. Например

 class main_overload { public static void main(int a) { System.out.println(a); } public static void main(String args[]) { System.out.println("That's My Main Function"); main(100); } } 

В этом двойном обратном косайте шаг, я просто называю основной метод ….

Да, вы можете перегрузить основной метод, но должен быть только один метод с сигнатурой public static void main(string args[])

 package rh1; public class someClass { public static void main(String... args) { System.out.println("Hello world"); main("d"); main(10); } public static void main(int s) { System.out.println("Beautiful world"); } public static void main(String s) { System.out.println("Bye world"); } } 

Да, основной метод может быть перегружен, так как другие функции могут быть перегружены. Следует обратить внимание на то, что в качестве аргументов должна быть по крайней мере одна основная функция с «String args []». И может быть любое количество основных функций в ваша программа с разными аргументами и функциональностью. Давайте рассмотрим простой пример:

 Class A{ public static void main(String args) { System.out.println("This is the main function "); A object= new A(); object.main("Hi this is overloaded function");//Calling the main function } public static void main(String argu) //duplicate main function { System.out.println("main(String argu)"); } } 

Выход: это основная функция
Привет, это перегруженная функция

  • Как сохранить изображение в формате JPEG на Android с пользовательским уровнем качества
  • Android: как отключить элементы списка при создании списка
  • Разделение на Java всегда приводит к нулю (0)?
  • Android: отправка данных> 20 байтов BLE
  • Может ли Android Studio использоваться для запуска стандартных проектов Java?
  • Импорт android.support не может быть разрешен
  • итерация и удаление с карты
  • Android: Есть ли способ изменить язык по умолчанию для Android на новый язык?
  • Какие языки программирования могут использоваться для разработки в Android?
  • Ошибка Java. Фактические и формальные списки аргументов различаются по длине
  • Как добавить программную учетную запись в андроид?
  • Давайте будем гением компьютера.