繁体   English   中英

包含main方法的Java Extending类

[英]Java Extending class containing main method

我将以下代码作为作业的一部分

class Base {
  public static void main(String[] args){
    System.out.println("Hello World");
  }
}

public class Factorial extends Base{


}

我的任务是运行代码,然后解释输出。文件的名称是Factorial.java 代码运行没有问题,打印Hello World对我来说是令人惊讶的。 在输入代码之前,我认为它不会编译,因为正在扩展的父类应该在另一个文件中,但现在我不太确定。 非常感谢soome澄清。

Java允许您在单个中定义多个类.java与您最多可以有一个条件文件public类, 如果你做那么公共类的名称必须与的名称相匹配.java文件。 在您的情况下,声明为public的类是Factorial ,因此您的文件名必须是Factorial.java

继承在这里正常工作,并且Factorial继承了public static void main() ,这就是为什么你在执行java Factorial看到你的输出。

您可以在同一个文件中拥有多个类,但只有一个公共类,因为Base不是公共类,但不是推荐的做法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM