我正在阅读Java for Dummies第二版,它说最好为类的变量定义访问器方法,而不是让它们public
。这是真的吗?
答案 0 :(得分:3)
是
定义访问器方法可以提供更大的灵活性。例如,您可以使public
可读,但只能private
可写。
Here's a Skeet answer to this particular question。他建议总是将你的领域变为私人
答案 1 :(得分:1)
是的,这是一个惯例。
它允许您控制其他类如何访问成员(通常是私有的)。例如,您可以从返回的基本get / set开始并设置值。但也许在项目的后期你会想要添加更多的控制权。在这种情况下,您只需要更改get / set方法,而不是折射所有项目。
答案 2 :(得分:1)
我甚至可以说,如果可能的话,最好不要使用访问器方法。让类在自己的状态下工作,而不是将它公开给另一个类来使用。
如果必须公开状态,则访问器方法使您有机会返回状态的副本而不是实际的对象。这样调用类就无法从外部修改状态,从而避免了不变量被破坏的问题。
答案 3 :(得分:0)
这是真的!
在Java中,通常的做法是将类变量声明为private,然后编写public accessor和mutuator方法来控制它们在类之外。
答案 4 :(得分:0)
制作访问器方法通常很好,以规范任何其他类(和任何人)可以使用的数据。
特别是在大型项目中,您希望其他类只使用类中的许多变量中的一些,因此您只需制作一些getter方法。
另一方面,它使代码更清晰,更容易看到发生了什么。第三,使用错误的变量在程序中创建自己的错误比较困难,因为在其他类中,可供选择的变量较少。
答案 5 :(得分:0)