对象数组中的main()方法

时间:2014-11-13 14:38:06

标签: java

我刚开始学习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?
    }
}

3 个答案:

答案 0 :(得分:1)

main - 方法是static方法。静态方法不引用单个对象,将它们视为类的方法而不是对象 - 它们不需要任何对象来工作。 Read this for further explanations

答案 1 :(得分:0)

“但每个对象都有主类?”

你的问题不是那么清楚,但如果你问每个类是否需要main()方法,那么简短的答案是 NO 。你可以在一个单独的类中有一个main()来调用所有其他类(Hobbit类,Wizard类,Elf类等)。

答案 2 :(得分:0)

如果你的函数/变量是static,那就意味着它只有一个实例,无论你要创建多少个类的实例。

第二件事,如果你只为你的主要方法创建单独的类

,它会更美观