我不明白将main
函数放在类中的重点是什么!难道他们可以说Java和C#是完全面向对象的吗?
答案 0 :(得分:3)
static
方法不是OOP所以这没什么意义。
Java要求所有代码都在类中,即在类文件中。如果你不这样做,你必须把它放在某个地方,你不会通过对main
做例外来获得更多。最好保持简单。
我不明白将main函数放在类中的重点是什么!
不要问“为什么不做某事”,最好问“为什么做某事”,如果没有很好的理由,通常最好不要这样做。
答案 1 :(得分:3)
他们这样做是为了简单起见。如果允许main函数在一个类之外,那么该语言必须支持一个全新的机制来声明类之外的函数。目前还没有这样的机制,坦率地说,这完全没有必要。通过不在语言中添加不必要的东西,他们保持语言简单。
答案 2 :(得分:0)
类中 main 背后的答案在“进程和线程”主题中。
阅读Oracle's Processes and Threads以更好地了解该主题。
这个想法是你的类需要一个线程来运行。您的课程是您的申请的一部分。每个应用程序都需要一个Process和至少一个Thread来运行。默认情况下,使用主线程,这意味着您的所有班级'默认情况下,代码在 main 线程内运行。
答案 3 :(得分:0)
这两种语言都是在考虑面向对象的情况下创建的,没有任何向后兼容的包袱(例如,与c ++不同,它也被认为是面向对象的,但它与c的向后兼容性强制它允许自由方法,方法的概念)在任何类之外定义,并且它的名字暗示它的所有构建块都基于一个对象。