2012-02-02 28 views
0

例如,我有一个简单的POJO类,有一些属性。我的安装人员正在做的事情是通知我班的财产变更监听员发起财产变更事件。他们在这方面是否是制定者?我应该给他们点名还是添加此评论足够?一些示例代码:如果不仅仅是设置一个值,我应该在setter方法前添加“set”吗?

/** 
* This is a special setter which uses property change support. 
* @param engineerOnDue engineer 
*/ 
public void setEngineerOnDue(String engineerOnDue) { 
    propertyChangeSupport.firePropertyChange("engineerOnDue", this.engineerOnDue, this.engineerOnDue = engineerOnDue); 
} 
+0

我不明白为什么不能称为setter。 – Max 2012-02-02 14:25:53

+0

这只是一个例子。我所说的是一种方法,它不仅设定了价值,而且还做了其他事情。 – 2012-02-02 14:27:20

回答

2

这一切都取决于您希望提供给客户端的API。通常情况下,客户端不需要知道方法的实现,所以如果集合名称涵盖了时髦的话:只是使用它。

0

如果您和您的团队对此感到满意,请将其保留。我会创建两个方法,一个简单的setter和另一个设置属性(无论如何调用setter)。除非你不能拆分操作,因为它们必须一起发布。

0

POJO不仅仅是一个存储没有逻辑的值的容器吗?也许你应该从你的使用案例中,而不是从POJO中解雇你的事件......

比你甚至不必考虑如果这个setter应该被称为setter。

0

恕我直言,使用getters/setters而不是公共方法的重点是允许您在属性更改时执行操作。继续吧。我甚至不会告诉客户我在那里做别的事情,这不是他的业务。
但是请永远不要费时费力地完成任务(数据库检查,网络访问):用户对于设​​置者的合理期望是快速的。

0

除封装外,这是使用JavaBeans setter的主要原因:每当属性发生变化时能够触发事件。这绝对应该是一个制定者。

阅读Java tutorial about JavaBeans。你要做的是在bean中定义一个绑定属性

0

不,这仍然是一个设置。在公共领域使用getter/setter方法的全部好处是,它们允许您不仅仅设置字段。它还从类的调用者隐藏内部,允许您随时更改功能,而不必担心破坏代码的其他部分。

相关问题