Java bean的惯例是什么,并实现像Comparable这样的接口?

时间:2014-11-03 09:27:15

标签: java javabeans conventions comparable

据我所知,Java Beans应始终:

  1. 只有一个空构造函数
  2. 这些字段只有字段和getter / setter方法。
  3. 但是,我想知道Java bean实现Comparable等接口的惯例是什么?我可以让java bean保持纯粹,这意味着绝对没有行为,只有数据,并且编写自定义比较器类。尽管如此,实施可比性更容易。

    在实现简单的通用接口(如Comparable to Java Beans)时是否有任何约定?我自己找不到任何后果,但感觉我可能违反了一些规则,而且可能有一些我没有想过的事情。

1 个答案:

答案 0 :(得分:4)

恕我直言,这个问题主要不是关于惯例,而是关于需求。

你是对的,将bean的东西与任何业务逻辑分开是一种很好的方式。我在这里补充一点,这通常是一种很好的做法,因为你的bean和比较器之间的关系是多对多的,即

  1. 您可能会为一个bean类保留几个比较器,并在不同的上下文中使用它们
  2. 有时您可以为一些不同的类重复使用一个比较器,或者制作比较器的层次结构。
  3. 然而,你认为将比较逻辑写入类本身并不那么冗长,在某些情况下更可取。选择完全取决于作者对他/她正在进行的应用程序的品味和要求。