我刚开始学习Java并通过Heard up系列。我看到几个例子,其中创建了一个类,并且在main中有main,在main中创建了一个类的对象。由于main()也是同一个类的一部分,这可以吗?创建新对象时,它是否还创建了main()的多个副本?编译器如何解码?
解释问题的示例代码段
public class Hobbits {
int size;
public static void main(String [] args) {
Hobbits h = new Hobbits[3];
// This is my point of concern.
// Here i create array of objects but each Object would have main class?
}
}
答案 0 :(得分:1)
main
- 方法是static
方法。静态方法不引用单个对象,将它们视为类的方法而不是对象 - 它们不需要任何对象来工作。 Read this for further explanations
答案 1 :(得分:0)
“但每个对象都有主类?”
你的问题不是那么清楚,但如果你问每个类是否需要main()方法,那么简短的答案是 NO 。你可以在一个单独的类中有一个main()来调用所有其他类(Hobbit类,Wizard类,Elf类等)。
答案 2 :(得分:0)
如果你的函数/变量是static
,那就意味着它只有一个实例,无论你要创建多少个类的实例。
第二件事,如果你只为你的主要方法创建单独的类
,它会更美观