【问题标题】:whys is void written after static in java method call为什么在java方法调用中的静态之后写入无效
【发布时间】:2016-07-17 05:09:02
【问题描述】:

为什么在函数定义中 void 写在 static keyword 之后?

我尝试在 static 关键字之前写一个 void。

它给了我一个错误并显示一条消息。

易变

【问题讨论】:

    标签: static void


    【解决方案1】:

    我假设您指的是 C 或 C++,所以这只是定义它的起始符,它使为编译器编写解析器的人的生活更轻松(他们不必猜测顺序关键字)。

    关于将语言用作程序员:void 指的是函数的返回类型,并且是函数声明的一部分,就像它的名称和参数一样。 static 关键字在每种语言中表示不同的内容。简而言之,在 C 中,这意味着该函数仅在该文件中可见,在 C++(和 Java)中,该函数不需要this,并且可以在类本身上调用(没有实例)。有关此问题的更多信息,请阅读this question

    【讨论】:

      【解决方案2】:

      看,这是任何语言的标准,其中static 告诉该函数可以从任何地方访问,void 告诉该函数不返回任何内容,并且void 是一个返回类型,返回类型是总是写在函数名之前,所以你不能把static放在中间,你必须写在前面。希望你理解

      【讨论】:

      • 那么为什么它会给我一个错误“volatile”是预期的
      【解决方案3】:

      void 是定义方法返回类型的关键字。在void 的情况下,它只是说该方法不会返回任何内容。您可以将其他内容(intString 等)放在那里,但它们必须反映您想要返回的内容(如果您有不会返回的代码路径,您应该会收到错误消息)。

      void 需要在static 之后的原因是因为这是语言定义的。返回类型位于方法名称之前。您收到错误是因为您以编译器不期望的方式定义方法。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-03-02
        • 1970-01-01
        • 2016-12-23
        相关资源
        最近更新 更多