我一直觉得它非常有用,坚持在Java Beans命名约定:getX()
,setX()
,isX()
等我认为Java Bean的命名约定提供了几个主要优点:
我知道Java API中有许多类不使用Java Beans命名约定。一个示例就是ArrayList
,其中包含诸如之类的方法size()
。
我实际上有两个主要问题:
ArrayList
是在Java Beans出现之前写的。Oracle习惯于对所有(或至少大多数)新内容使用Java Beans命名约定吗?下面的内容更多的是让人们思考而不是实际的问题。
如上所述,我一直坚持使用Java Bean命名约定。我认为它们以很多方式提供了很多优势。我认为最大的问题是,没有Java Bean,很多人会使用令人困惑的命名约定
我个人认为应该始终遵循以下原则,并且很好奇人们对此有何看法:
big()
应为isBig()
。size()
是House
对象的适当方法,但door()
不是。这样做的原因是自然决定的size
的继承属性house
。物理上并不需要house
a door
。door()
,应将方法命名为getDoor()
。profile()
。根据类的不同,它profile()
可能是动词或名词。我可能正在分析某些内容,或者正在获取个人资料。将方法名称更改为getProfile()
或doProfiling()
将增加说明。如果您遵守变量和getter / setter方法之间的命名约定,则还可以使您使用依赖于这些约定的工具,例如BeanUtils和Spring。在将名称更改为更具可读性的同时,您可能会失去使用有助于缓解“样板”代码的api的功能。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句