Какую цель "переопределение" main служит в Java? - PullRequest
1 голос
/ 04 ноября 2011

это то, как мы можем переопределить основную функцию в Java ....

public class animaltest 
{
    public static void main(String[] args)  
    {
        horse h = new horse();
        h.eat();
    }
}

public class inheritmain extends animaltest 
{
    public static void main(String[] args)  
    {
        System.out.print("main overrided");
    }
}

а в чем выгода переопределения основного ??

Ответы [ 3 ]

7 голосов
/ 04 ноября 2011

static методы не переопределяют: они затенены.В этом случае есть два различных независимых статических метода, а именно animaltest.main и inheritmain.main.(См. Можем ли мы переопределить статический метод в Java? )

«Преимущество» - если оно есть ;-) - то, что программу можно запускать / запускать с либоКласс , поскольку оба класса реализуют метод main :

Метод main аналогичен функции main в Cи C ++;это точка входа для вашего приложения и впоследствии будет вызывать все другие методы, требуемые вашей программой.

Счастливое кодирование.

2 голосов
/ 04 ноября 2011

Переопределение не для STATIC функций, переопределение только для функций-членов, которые не являются статичными.

В этом случае будет наблюдаться POLYMORPHIC.

0 голосов
/ 04 ноября 2011

Я не думаю, что вы можете переопределить main в Java, потому что вы не наследуете main ни от одного класса. Следовательно, нечего переопределять.

...