繁体   English   中英

获取/设置者或属性图

[英]getter/setter or map for properties

我对在pojo类中使用属​​性的最佳做法有疑问。 基本上,我看到pojo类具有用于私有字段的getter / setter方法。 操作属性很容易,但是没有那么多的灵活性(如果要添加其他属性,我们将需要更改至少一个类)。

但是还有另一种选择来使用属性(特别是如果您有太多属性),而使用Collection(地图,集合等)。 在这种情况下,如果我们要添加一些新属性,则无需更改类。从我的角度来看,此选项的缺点是,由于按键错误,获取某种属性会有些困难。 哪些最佳实践可以应用于此主题?

我认为,此选项的弊端在于,由于按键错误而很难获得某种属性。

这是这样做的问题之一 ,是的。 另一个问题是,使用不存在的属性将导致运行时错误,而不是编译时错误。 而且,除非所有属性值都是相同的类型,否则您要么必须使用无类型的集合并将所有内容f = (int)obj.get("foo");转换为整个位置( f = (int)obj.get("foo"); ),要么使用多个有类型的集合并始终使用正确的( f = obj.getInt("foo"); )。

哪些最佳实践可以应用于此主题?

使用适当的属性,而不是名称/值对的集合。 :-)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM