我听到有人说“如果main不是静态的,那么JVM可以创建一个包含main的类的对象,并通过对象调用该main。
但是问题是JVM如何知道在重载构造函数的情况下,即使有只有一个参数化的构造函数,然后传递什么。”
那是正确的原因吗?
因为在不进入主函数的情况下如何创建类的对象?
请对此发表您的看法。如果那不是正确的原因,那么正确的原因是什么?
这只是一个约定。Java语言设计人员可以轻松地决定必须指定要实例化的类,从而使其构造函数成为主要方法。但是,调用静态方法同样有效,不需要先实例化一个类。
同样,如果类具有超类,则可以通过更改超类来改变程序启动的行为(因为必须在子类之前调用超类构造函数),这可能是无意的。静态方法没有这个问题。
主要方法是静态的,因为它可以使事情变得更简单,但是如果他们想使其变得更复杂,则可以这样做。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句