main()在接口内的类与main()内部

时间:2018-06-16 16:37:20

标签: java interface main

首先,如果我的问题很天真,请原谅。我已经开始学习Java作为学校课程的一部分,但我发现它非常有趣,我开始探索非课程主题。我的问题是接口内的main()是否比类内的main()有任何好处。

public interface Main {
    public static void main(String[] args) {
        System.out.println("Hello world!");
    }
}

1 个答案:

答案 0 :(得分:1)

Java 8允许接口内的静态方法。

这是使接口内的main()成为可能的唯一原因,而以前不是。

对于nitpick,接口内的main给它access_flags ACC_INTERFACE和ACC_ABSTRACT(因为应该实现接口方法)。这意味着您也可以在类中实现main(),从而产生混淆。

由于这个原因,加上只有偶然的事件过程使得接口内的main()成为可能,我建议在课堂上使用main()。

除此之外,在类或界面内使用main()没有任何区别。

接口

中main()的可能好处

由于main()是特定于程序的,因此只有一个用例,方便的是拥有... Mainable接口: debug 。 给定一个足够通用的main()和适当的参数,你可以使用它作为驱动程序来调试类,一次一个地调用它们,并节省时间,避免为每个类重写一个main()。你可以回收代码。

虽然它有点边缘,可能不值得努力保持所有Mainable类与这个main()兼容,但它可以完成。这是一种可能的说明。