|
|
1
40
通过限制“其他代码”(可能由其他人编写/维护)的访问,您将来可以更自由地更改它,而无需担心破坏其他依赖它的代码。 问题不是“我应该把这个保密吗?”但更确切地说,“这是否需要非私有化?”.是否有其他代码可能需要访问变量? 如果事实证明是这样的话,您可以分配适当的访问权限(可能通过getter/setter)并接受对其进行更改是很困难的。否则你就把它保密。 |
|
|
2
11
我认为你应该从另一个角度来看待它:为什么你要把变量变成非私有的?适当的封装意味着隐藏实现的细节,因此默认情况下应将字段设为私有。 |
|
|
3
8
基本上,一旦你做了一个变量
即使是私人使用的课程,这也是一件大事。
所以你什么时候能把变量的作用域改成
如果您正在直接读取或设置一个变量,那么这是不可能的。相反,您的类需要强制用户调用getter/setter,方法是禁止直接访问变量,并在其位置提供适当的公共getter/setter方法。
因为一般来说你可以
从未
预见到未来的变化,它已成为公认的最佳做法
不
变量
(有一个例外:在某些情况下,
|
|
|
4
7
一般经验法则是缩小变量和方法的范围。你越是保密,你就越容易改变你的类,而不会在系统的其他部分引起问题(例如:减少耦合)。 所以作为一般规则,私有应该是默认的 |
|
5
3
对。没错。任何
访问修饰符的存在是为了程序员的方便,并帮助他正确地定义类的接口。看看 the wikipedia article on encapsulation . |
|
|
6
3
所以,你必须问自己为什么要保密。那么,如何用矛盾的思想来运用真理呢? 它能公开吗? 如果答案是,您不希望人们能够直接访问和修改该属性,那么它就不能是公共的。 可以默认吗? 如果答案是,您不希望同一个包能够直接访问和修改属性,那么它就不能是默认值。 它能被保护吗 如果答案是,您不希望子类直接访问和修改属性,那么它就不能被保护。 因此,如果所有答案都是“否”(并且您必须确定在这些场景中为什么不希望访问的答案),那么它必须是私有的。 问题是,你真的了解修饰符给你的是什么,以及如何访问修饰符,而不是盲目地将所有东西都私有化,并创建设置者和获取者,因为这就是你的讲师/书/手册教给你的。 |
|
|
7
2
在以下情况下,成员是私有的:
这种设计的对象是封装,这意味着您将类实现隐藏在客户机代码中。它提高了代码的可读性、可维护性和可测试性。 |
|
|
8
1
类的主要目的是封装数据和行为并隐藏内部实现,同时在外部公开干净、简单和有用的API。 有两个不同的问题需要考虑:公共契约(API)和私有数据。
|
|
|
9
0
其中许多注释应用于内部/嵌套类、方法和构造函数。 基本上,您希望在不造成过度复杂性的情况下尽可能限制访问。如果你能使一些私人或静态的东西,我建议你。如果你能让一个领域最终,这通常也有助于提高清晰度。 当一个字段或任何成员是私有的时,您可以立即看到它在何处使用以及何时不再使用。 |
|
|
user29759326 · 如何返回递归函数中的最后一个值? 1 年前 |
|
|
malife89 · 将java中的字符串读取为正确的日期格式 1 年前 |
|
|
Tim · 在java中,有没有更快的方法将字节数组写入文件? 1 年前 |
|
|
rudraraj · java中未声明最终变量 1 年前 |
|
|
Bala Ji · 以下BFS的实施效率如何? 1 年前 |