我们可以传递对象来枚举抽象方法并在枚举中进行计算吗?这是一个场景,我有四个常量,每个都有自己的值。基于常量,我将在我的方法中进行计算。相反,我想在枚举中进行计算并希望得到响应。在枚举中进行计算,我必须将两个/三个参考对象传递给枚举方法...枚举做计算
ex:考虑学校为枚举,常量是TEACHER(LOWLEVELACCESS),STUDENT(NOACCESS),OFFICEADMIN(OFFICEACCESS)。
在枚举,我有抽象方法过程其接收用户POJO,字符串作为参数,并更新在对象的某些字段和返回相同的USER POJO(与更新的)给调用者。通过这个,我可以在枚举本身中同步常量和它们的逻辑。
所以我的问题,
它是正常的有枚举此实现? (我已经看到大多数的例子对待枚举来存储常量值而不使用它们进行任何计算)
这个计算可以通过类中的方法来完成,如果我在枚举方法中进行计算,有什么好处?
是否有可能在enum中创建getter/setter方法?
在此先感谢!
你可以发布一些(伪)代码后,你是什么?基本上你可以添加方法来枚举并在那里进行计算,但它会让我觉得它是一种设计气味(至少不知道更多)。 – Thomas
@Thomas我同意关于潜在的设计气味。我不会一概而论,但我认为,如果您以这种方式利用枚举,可能会出现这种情况。 – davidxxx
枚举常量具有行为是完全可以接受和习惯的。认为“代码味道”就是否定自己90%的枚举能力。 –