мы можем иметь main () в интерфейсе и разные реализации для main () в классах, которые реализуют этот интерфейс? - PullRequest
8 голосов
/ 14 марта 2012

Я знаю, что main () может быть перегружен в классе, когда компилятор всегда принимает тот, у которого String[] args, в качестве аргументов в качестве основного метода, с которого начинается выполнение.Но можно ли объявить то же самое

main(String args[]) in an interface and implement it in different classes differently?

Например,

package test;
interface test
{
    public void main(String args[]);
    public void display();
}



package test;
class Testclass1 implements test
{
   public void display()
   {
       System.out.println("hello");
    }
   public static void main(String[] args)
   {
       test t;
       t.display();
    }
}


package temp;
import test.*;
abstract class Testclass2 implements test
{
   public static void main(String args[])
   {
       System.out.println("TESTING");
    }
}

Ответы [ 11 ]

0 голосов
/ 14 марта 2012

это ошибка компилятора. вы не можете переопределить нестатический интерфейс статическим методом

...