为什么所有的java代码都打包在Classes中?

shi*_*mna 3 java class

我已经开始学习Java并在网上挑选了一些书籍和材料.我用C++编程了.我不明白的是,即使main方法也包含在Java中的Class中.为什么我们在Java中的某些类中包含所有内容?为什么它没有独立的功能?

Kar*_*tel 5

因为这就是语言设计者希望它成为的样子.

  • 为什么是这样?这样做有什么好处呢?仅仅是为了让实现更简单吗?这个答案没有提供任何澄清 (3认同)

And*_*s_D 5

这是面向对象编程语言的主要概念:一切都是一个对象,它是一个类的实例。

因此,因为 Java 中只有类(除了少数 Java 原始类型,如 int、float 等),我们必须在类中定义main方法,即 Java 应用程序的起点。


main方法是一个普通的静态方法,其行为与任何其他静态方法一样。只有虚拟机使用这一种方法(仅)启动应用程序的主线程

基本上,它是这样工作的:

  1. 你启动应用程序 java MyClass
  2. JVM 加载这个类(“classloading”)
  3. JVM 启动一个新线程(主线程)
  4. JVM 调用带有签名的方法 public static void main(String[])

就是这样(简而言之)。

  • @Karl - 答案旨在帮助纯 Java 初学者,而不是赢得关于*最佳* OO 语言的讨论;-) (5认同)