HibernateDocs
在此hibernate文档的链接中,在示例中,Cat.class
setId()
被声明为private
。
将setters
私有标记为我不想更改其值的字段是一种好习惯吗?
这也可以用作标记字段final
的替代方法吗?为默认构造函数和构造函数提供所需字段,并为这些字段设置私有
我想在Hibernate的上下文中回答这个问题,而不是java的抽象。
这是一个很好的做法,是否应该使用?
答案 0 :(得分:0)
我认为不是。字段封装方法用于从类外部访问/设置私有字段。如果您不想修改字段,则应将其声明为最终字段,或者不应声明setter方法。显示的hibernate示例是一个例外。如果持久化实体,则通过反射自动设置id属性(如果自动生成)。将此setter设为私有是保留此值的好方法,而不存在在代码中手动修改它的风险