Це питання, з яким я стикався в своєму інтерв’ю.
Чому основний метод на Java називається загальнодоступним статичним недійсним main (String [] args)?
Відповідь:
1. main () повинен бути оголошений загальнодоступним, оскільки він викликає JVM кожного разу, коли розпочнеться виконання програми. JVM не належить до нашого програмного пакету.
Не маючи доступу до основного за межами пакету, ми повинні оголосити його як загальнодоступне. Якщо ми оголосимо його як інше, ніж публічне, воно показує помилку виконання, але не помилку часу компіляції
2. main () повинен бути оголошений статичним, тому що якщо метод оголошений статичним, ми можемо викликати цей метод поза класом за допомогою ClassName.methodName ();
class Sample
{
static void fun()
{
System.out.println("Hello");
}
}
class Test
{
public static void main(String[] args)
{
Sample.fun();
}
}
Спершу JVM завантажить тестовий клас та перевірить аргументи Commandline та закликає основний метод як Test.main ();
3. main () повинен бути оголошений недійсним main (), оскільки JVM не очікує жодного значення від main (). Отже, він повинен бути оголошений недійсним.
Якщо надано інший тип повернення, це RunTimeError, тобто; NoSuchMethodFoundError.
4. main () повинен мати аргументи String як масиви, оскільки JVM викликає основний метод шляхом передачі аргументації командного рядка. Оскільки вони зберігаються в об'єкті рядкового масиву, він передається як аргумент main ().