【问题标题】:What does private MyShovel Shovel mean? [closed]私人 MyShovel 铲子是什么意思? [关闭]
【发布时间】:2015-01-15 07:09:09
【问题描述】:

我很难理解这个结构

 public class MyBucket extends bucket {
   private double var1;
   private MyShovel Shovel; <- this is the problem here

   public MyBucket(int volume, MyShovel Shovel) {

      Some code here

   }
  }

我无法理解 Java 术语中的私有 MyShovel Shovel 是什么。它是我的项目中定义的一个类,但我无法确定它在 Java 世界中的名称。有人可以帮我定义它,这样我就可以研究它是什么。这是生产代码,它可以工作。只是无法弄清楚该构造的官方 Java 名称。

【问题讨论】:

  • ShovelMyBucket 类中MyShovel 类型的私有实例级别 字段。注意:Shovel 只是对MyShovel 实例的reference
  • shovelMyBucket的实例变量、成员或字段
  • 成员变量字段 按照Java命名约定,它应该是shovel,而不是Shovel。变量应以小写字母开头;类型以大写字母开头。
  • 嗯,改成MyShovel shovel就行了!

标签: java syntax nomenclature


【解决方案1】:

Shovel 是(私人)成员。它的类型是MyShovel。这意味着MyBucket 的每个实例都包含对MyShovel 对象的引用,该对象只能在类中引用,名称为Shovel

请注意,此声明遵循 java 命名约定。在适当的约定中,它会被称为 myShovel,在 lowerCamelCase 中。

【讨论】:

  • 更好 :) 只是想突出那里的对话。
【解决方案2】:

Shovel 只是一个变量。它是MyShovel 的一个实例。 MyShovel 将是代表虚拟铲子的Class。因为它是一个全局变量,或field,在MyBucket 中,这意味着每个MyBucket 内部也有MyShovel

在您提供的代码中,它是未定义的,没有价值。因为它是private,所以只有MyBucket 中的方法可以访问它。 MyBucket 构造函数采用 MyShovel 参数,很可能是 Shovel 设置的值。

你可以这样想: 每个MyBucket 必须在其中有一个MyShovel 才能使其工作。因此,在创建 MyBucket 时,您在其中放置了 MyShovelShovel 是该特定 MyShovel 将被存储的空间。

正如其他人提到的,它应该命名为“铲子”以进行命名约定。

【讨论】:

    猜你喜欢
    • 2013-06-15
    • 2010-12-29
    • 2014-09-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-03
    • 2013-05-16
    • 2011-04-03
    相关资源
    最近更新 更多