为什么有些类需要主要方法而有些类不需要?

时间:2014-01-14 05:37:10

标签: java class oop

我目前正在注册一个在线Java课程,我的导师让我相信所有Java类都必须有一个主要的方法

即。

public class
{
public static void main(String[] args)
}

但是,我们刚刚在其他文件的交叉引用类中找到了一个单元,但事实并非如此。

实施例

public class Pie
{

        // declare variables to be called in separate file
        String type;
        int diameter;
        float radius;

}

然后可以通过以下方式引用Pie:

Pie newPie = new Pie();

System.out.println("What type of pie will you be eating today?");
        newPie.type = in.readLine();
        System.out.println("Ah. " + newPie.type + ". Excellent choice.\n");

这很好用。然而,为什么这个功能正确地解释了我背后的解释。有人可以解释一下吗?

5 个答案:

答案 0 :(得分:5)

每个Java程序(反过来,由一个或多个Java类构建)都需要Main方法。此特殊方法的目的是作为程序的入口点,以便您的程序可以执行。更多信息可以在this页面找到。

Pie示例中,当您运行应用程序时,main方法将是第一个被调用的方法。一旦调用它,它将使用Object模板(类)创建一个名为newPie的新Pie,依此类推。

正如您使用IDE的额外信息一样,如果您在main课程中使用给定签名Pie添加public static void main(String[] args)方法,则下次运行时程序IDE将要求您选择您的入口点,因为它现在将找到两个入口点。一旦您做出选择,IDE将进行必要的配置,以便记录您的应用程序的入口点。

答案 1 :(得分:3)

my instructor has led me to believe that all Java classes must have a main method
这是错的。所有类都没有必要使用main方法。 main方法用作java应用程序的入口点。因此,一旦使用单个类的main方法输入java代码,就可以在那里调用其他类代码。

更好的陈述是:

  

在Java编程语言中,每个应用程序都必须包含一个   主要方法,作为应用的切入点。

在此处详细了解主要方法:

http://docs.oracle.com/javase/tutorial/getStarted/application/index.html?utm_source=twitterfeed&utm_medium=twitter#MAIN

答案 2 :(得分:2)

Java类和Java程序是两回事。

Java程序包含一个或多个Java类,每个类可以包含方法和变量。 main方法是一个特殊的静态方法,Java将其识别为程序中的入口点(您可以将main方法视为程序的蓝图或方向集,而类是像Pie这样的对象的蓝图)

所以回答你的问题,一直存在误解。 Java程序需要main方法,而Java类不一定需要main方法。

答案 3 :(得分:1)

没有必要在每个java类中使用main方法main方法是java应用程序的入口点。可以class没有main方法。

答案 4 :(得分:0)

他们是不同的,

通常您在应用中创建了一个类来存储一些数据

但是还有另一个类是您的主要类,它将启动您的应用程序,您的应用程序启动将在那里并调用另一个类