【发布时间】:2018-12-04 00:17:47
【问题描述】:
所以我一直在尝试理解属性的确切含义。我已经在 stackoverflow 和其他网站上搜索了之前询问的 Q/A,但我遇到的答案并没有具体说明使用 setter 和 getter 修改的字段(实例变量)是否也称为属性。
我遇到的定义是“修改对象字段的 setter 和 getter 方法的组合”
以下只是一小段代码,如果您需要更多说明,可以让您更好地理解我的问题。
//property?
String name;
//property?
public void setName(String n){
name = n;
}
//property?
public String getName(){
return name;
}
【问题讨论】:
-
我听说它们是 类成员 或 类属性,如果它们是私有的,因此如果没有 getter 和 setter 就无法修改,当然是非静态的.也许Property是合法的描述……java中还有一个类
java.util.Properties扩展HashTable<Object,Object>。 -
@deHaar 不要混淆
java.util.Properties,它是Java API中的一个类,具有对象(或类,或其他实体)的属性,这是对象中一个重要的一般概念面向领域的分析、设计和开发,与特定语言无关。它们是完全不同的东西,彼此没有关系(除了java.util.Properties有自己的属性:))。java.util.Properties是一个类,可帮助将各种命名值(如软件设置)存储到文件中并在之后读取它们。 -
@m.vokhm 我不想通过提及
java.util.Properties来混淆任何人。我发现值得一提的是,有一个名为Properties的类,以确保在谈论一般概念及其术语时没有人会对此感到困惑。 -
@deHaar 并且 BTW 属性也可能是静态的(类属性)。它们可以是静态的、动态的、私有的、公共的、受保护的、最终的以及任何可以想象的。
-
@m.vokhm 当然,但问题是关于 properties 只能通过 getter 和 setter 修改,这至少使它们成为私有的,不是吗?
标签: java oop variables properties field