对于返回对象的属性/属性/成员的命名方法,有什么好的经验法则?如果一个对象具有一些不可变的质量“blarg”,那么返回该质量的方法应该称为“blarg()”还是“getBlarg()”?例如,Java API 是不一致的:大多数属性都是通过“get”方法访问的(即使是那些没有相应的“set”方法的),但我们也有类似 Object.hashCode() 而不是 Object。获取哈希码()。
更新:属性是否应该是一个字段(在实现中)是这里的决定者?那么在二维空间中表示不可变点的类呢?无论该点是存储为 (x,y) 还是 (r,theta),我仍然需要所有四个属性的访问器。它们应该是 getX()、getY() 等,还是只是 x()、y() 等?从用户的角度来看,由于我们不希望我们的用户知道/关心我们的实现,这四个不应该有相同的命名约定吗?