Java POJO 中的字段、变量、属性和特性之间有什么区别?

新手上路,请多包涵

当提及具有 getter/setter 的 Java POJO 的内部私有变量时,我使用了以下术语:

  • 场地
  • 多变的
  • 属性
  • 财产

以上有区别吗?如果是这样,使用什么是正确的术语?当这个实体被持久化时是否有不同的术语可以使用?

原文由 Victor Lyuboslavsky 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 455
2 个回答

从这里: http ://docs.oracle.com/javase/tutorial/information/glossary.html


  • 场地

    • 类的数据成员。除非另有说明,否则字段不是静态的。

  • 财产

    • 用户可以设置的对象的特征,例如窗口的颜色。

  • 属性

    • 未在上述词汇表中列出

  • 多变的

    • 由标识符命名的数据项。每个变量都有一个类型(例如 int 或 Object)和一个范围。另见类变量、实例变量、局部变量。

原文由 jahroy 发布,翻译遵循 CC BY-SA 3.0 许可协议

就在这里。

变量 可以是本地的、字段的或常量的(尽管这在技术上是错误的)。它像属性一样模糊。另外,你应该知道有些人喜欢调用 final 非静态(本地或实例)变量

价值观”。这可能来自新兴的 JVM FP 语言,如 Scala。

Field 通常是实例类上的私有变量。这并不意味着有 getter 和 setter。

属性 是一个模糊的术语。它很容易与 XML 或 Java Naming API 混淆。尽量避免使用该术语。

属性 是 getter 和 setter 的组合。

下面的一些例子

public class Variables {

    //Constant
    public final static String MY_VARIABLE = "that was a lot for a constant";

    //Value
    final String dontChangeMeBro = "my god that is still long for a val";

    //Field
    protected String flipMe = "wee!!!";

    //Property
    private String ifYouThoughtTheConstantWasVerboseHaHa;

    //Still the property
    public String getIfYouThoughtTheConstantWasVerboseHaHa() {
        return ifYouThoughtTheConstantWasVerboseHaHa;
    }

    //And now the setter
    public void setIfYouThoughtTheConstantWasVerboseHaHa(String ifYouThoughtTheConstantWasVerboseHaHa) {
        this.ifYouThoughtTheConstantWasVerboseHaHa = ifYouThoughtTheConstantWasVerboseHaHa;
    }

}

还有很多组合,但我的手指越来越累了:)

原文由 Adam Gent 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题