“public static void”在Java中意味着什么?

时间:2010-03-05 21:27:43

标签: java methods

public static void在Java中意味着什么?

我正在学习。在本书的所有示例中,我正在使用public static void来处理任何正在使用或创建的方法。这是什么意思?

9 个答案:

答案 0 :(得分:213)

这是完全不同的三件事:

public表示该方法可见,可以从其他类型的其他对象调用。其他选择包括privateprotectedpackagepackage-private。有关详细信息,请参阅here

static表示该方法与该类相关联,而不是该类的特定实例(对象)。这意味着您可以在不创建类的对象的情况下调用静态方法。

void表示该方法没有返回值。如果方法返回int,则您会写int而不是void

所有这三个方法的组合最常见于大多数教程将包含的main方法。

答案 1 :(得分:42)

这三个词具有正交含义。

public表示该方法将在其他包中的类中可见。

static表示该方法未附加到特定实例,并且没有“this”。它或多或少是一种功能。

void是返回类型。这意味着“此方法不返回任何内容”。

答案 2 :(得分:20)

public 关键字是一个访问说明符,它允许程序员控制类成员的可见性。当一个类成员以public开头时,该成员可以被声明它的类之外的代码访问。 (public的反面是private,它阻止成员被其类外部定义的代码使用。)

在这种情况下,main( )必须声明为public,因为它必须在程序启动时由其类之外的代码调用。

关键字 static 允许调用main( ),而无需实例化该类的特定实例。这是必要的,因为在创建任何对象之前,Java解释器会调用main( )

关键字 void 只是告诉编译器main( )没有返回值。正如您将看到的,方法也可以返回值。

答案 3 :(得分:15)

这意味着:

  • public - 可以从任何地方调用
  • static - 它没有任何对象状态,因此您可以在不实例化对象的情况下调用它
  • void - 它不会返回任何内容

你认为缺少回报意味着它没有做太多,但它可能会在数据库中保存一些东西,例如。

答案 4 :(得分:4)

这意味着三件事。

首先public表示任何其他对象都可以访问它。

static表示在调用函数之前,不必先实例化它所在的类。

void表示该函数不返回值。

因为你刚刚学习,所以在你学习课程之前不要太担心前两个,第三个在你开始编写函数之前不会太重要(除了main之外)。

我在学习编程时得到的最好的建议,以及我传给你的最好的建议是不要担心你不明白的细节。全面了解基础知识,然后回过头来担心细节问题。原因是你必须在你的第一个程序中使用一些东西(比如public static void),这些东西在没有先教你一些其他东西的情况下也无法真正解释。因此,暂时接受这就是它的完成方式,并继续前进。你很快就能理解它们。

答案 5 :(得分:3)

考虑典型的顶级课程。顶层只能使用公共访问修饰符和非修饰符访问修饰符,因此您可以看到公开,也可能根本看不到任何访问修饰符。

使用

`static``是因为您可能不需要在顶层创建实际对象 (但有时你会想要,所以你可能不会总是看到/使用静态。还有其他原因,你也不会包含静态,但这是顶级的典型。)

使用

void是因为通常您不会从顶级(类)返回值。 (有时你会想要返回除NULL以外的值,因此可能并不总是使用void,特别是在你声明的情况下,在顶层初始化一个你正在为某个值分配值的对象)。

<强>声明: 我自己也是新手,所以如果这个答案有任何不妥之处,请不要挂我。白天,我是技术招聘人员,而不是开发人员;编码是我的爱好。此外,我总是乐于接受建设性的批评,喜欢学习,所以请随时指出任何错误。

答案 6 :(得分:2)

Public - 表示类(程序)可供任何其他类使用。

Static - 创建一个类。也可以应用于变量和方法,使它们成为类方法/变量,而不仅仅是本地特定类的实例。

Void - 这意味着当类完成处理时不会返回任何产品。将此与为主类提供返回值的辅助类进行比较,这些操作类似于函数;这些在声明中没有空白。

答案 7 :(得分:2)

  • public表示您可以从类/对象的任何位置或包或类外部访问该类
  • static表示只使用一次语句块的常量
  • void表示没有返回类型

答案 8 :(得分:0)

static表示该方法与该类相关联,而不是该类的特定实例(对象)。这意味着您可以在不创建类的对象的情况下调用静态方法。 因为使用static关键字main()是您调用的第一个方法。 static不需要任何对象来实例...... 因此,在创建任何对象之前,Java解释器会调用main( )