美文网首页
提示十五

提示十五

作者: 飞絮搅青冥 | 来源:发表于2022-05-30 22:01 被阅读0次

今天来看提示十五:使类和成员的可访问性最小化。

  1. 软件设计的基本原则之一:信息隐藏或封装,一个设计良好的组件隐藏了它的所有实现细节,干净地将它的 API 与它的实现分离开来。然后,组件只通过它们的 API 进行通信,并且对彼此的内部工作一无所知。
  2. 经验法则很简单:让每个类或成员尽可能地不可访问。 正确使用修饰符对信息隐藏很重要。
  3. 对于顶层(非嵌套)的类和接口,只有两种可能的访问级别:包级私有(package private)和公有(public)。
  4. 如果一个包级私有的顶层类(或接口)只是在某一个类的内部被用到, 就应该考虑使它成为那个类的私有嵌套类。
  5. 为了测试将公共类的私有成员指定为包级私有是可以接受的,但是提高到更高的访问级别却是不可接受的。
  6. 带有公共可变字段的类通常不是线程安全的
  7. 非零长度的数组总是可变的,所以类具有公共静态 final 数组字段,或返回这样一个字段的访问器是错误的。

我们系统中对于这一点好像没有特别重视,基本只有一些接口的abstract方法会被置为protected,其他地方则大都直接public,没有控制过这些权限。我感觉可能和我们系统一直是内部人员开发,打包以后不需要发布给公众有关。所以我们在访问控制这一块就没有太多的注意。如果我们从事的是开源的项目,代码可能会被无数人查看修改,那么恰当的访问控制应该可以帮助我们减少很多麻烦,也能帮助阅读代码的其他人减轻很多负担。

相关文章

  • 提示十五

    今天来看提示十五:使类和成员的可访问性最小化。 软件设计的基本原则之一:信息隐藏或封装,一个设计良好的组件隐藏了它...

  • 温馨提示(十五)

    1、你所经历的一切,都是无形的财富。 2、说到做到,就是最简单的骄傲。 3、喜欢发呆的人,心里都有一个纯净的世界。...

  • 提示四十五

    提示四十五:谨慎使用stream。 默认情况下,流管道会按顺序运行。 要使管道并行执行,只需要在管道中的任何流上调...

  • 提示44-48 解耦

    今天学习有关解耦的内容,先看提示: 提示四十四:解耦代码让改变更容易。提示四十五:只管命令不要询问。提示四十六:不...

  • 提示五十五:谨慎返回optional

    第55条:谨慎返回optional。 集合、映射、Stream、数组、Optional都不应该包装在Optiona...

  • 提示25纯文本的威力

    今天继续学习提示二十五有关纯文本的内容,先看提示: 将知识用纯文本保存。 作者从什么是纯文本开始聊起,引出了将知识...

  • 提示35

    今天继续学习有关文本处理和工程日记的内容,先看提示: 提示三十五:学习一门文本处理语言。 作者通过与木工进行类比,...

  • 第三十五章 使用 CSP 进行基于标签的开发 - 使用服务器端方

    第三十五章 使用 CSP 进行基于标签的开发 - 使用服务器端方法的提示 使用服务器端方法的提示 从web页面调用...

  • 月圆时刻你想起了谁?

    天文专家提示:2017年的元宵月是“十五的月亮十五圆”,最圆时刻出现在当日8时33分,而赏月最佳时间则是当日20时...

  • ofo还我“血汗钱”

    月前预感到风声不对,申请了ofo退还押金,按照说明最长需要十五个工作日,如今十五个工作日早已过去,ofo提示我“押...

网友评论

      本文标题:提示十五

      本文链接:https://www.haomeiwen.com/subject/noraprtx.html