- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
从同一包中的其他类访问我的包私有(private)变量的好习惯是什么?
包私有(private)访问器
String getColor() {
return color;
}
仅作为对象中的字段进行访问。
String color = instanceOfClass.color;
我认为:
用于访问包私有(private)字段的包私有(private)方法。很多不必要的代码,但在我看来,通过很多字段(以及正确命名的访问器方法)提供了清晰度
我们不需要包中包私有(private)变量的访问器和修改器,所以也许我不应该创建它们?
哪种做法更好,符合编程约定?
编辑:感谢您的快速答复! :)
最佳答案
访问器和修改器更多地与抽象相关,而不是与封装相关。您希望能够控制该字段的设置方式,而不是让任何人在其中放置一些随机值。例如,您可能有一个永远不应该为空的值,所以..
void setField(Field field) {
if(field != null) {
this.field = field;
}
}
然后您将您的field
变量声明为private
。如果你允许任何人向其中写入任何内容,那么这个逻辑就需要移动到设置它的任何地方,这将导致代码重复。
关于java - 访问包私有(private)变量的好习惯是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44660826/
在我生活的世界中,构建一个将所有飞镖都扔到墙上的解决方案,并希望其中一些能命中靶心是一种非常糟糕的解决方案方法。 那么,我的问题出现了,什么时候在约定可接受的生产系统中使用 INSERT IGNORE
在数据处理时,经常会因为index报错而发愁。不要紧,本次来和大家聊聊pandas中处理索引的几种常用方法。 1.读取时指定索引列 很多情况下,我们的数据源是 CSV 文件。假设
关闭。这个问题是opinion-based .它目前不接受答案。 想要改进这个问题? 更新问题,以便 editing this post 可以用事实和引用来回答它. 关闭 6 年前。 Improve
我是一名优秀的程序员,十分优秀!