美文网首页
提示十六

提示十六

作者: 飞絮搅青冥 | 来源:发表于2022-06-01 23:28 被阅读0次

今天来看: 在公共类中使用访问方法而不是公共属性。

  1. 如果不更改API,则无法更改其表示形式,无法强制执行不变量,并且在访问属性时无法执行辅助操作。
  2. 应该被具有私有属性和公共访问方法的类(getter)所取代,而对于可变类来说,它们应该被替换为setter设值方法。
  3. 如果一个类在其包之外是可访问的,则提供访问方法来保留更改类内部表示的灵活性。如果一个公共类暴露其数据属性,那么以后更改其表示形式基本上没有可能,因为客户端代码可以散布在很多地方。
  4. 如果一个类是包级私有的,或者是一个私有的内部类,那么暴露它的数据属性就没有什么本质上的错误
  5. 虽然公共类直接暴露属性并不是一个好主意,但是如果属性是不可变的,那么危害就不那么大了。

这一章的内容还是比较容易理解的,就是如果一个类的属性是公开的,那么以后想要修改这个类就变得难以想象。文中举了jdk中Point和Dimension两个类作为例子,还说暴露 Dimension 的内部结构的决定仍然导致着严重的性能问题。我去找了一下这两个类,感觉都挺简单的,不清楚为什么还会影响性能,可能需要对计算机图形学了解一点内容或者认真研究一下相关代码才能更清楚。


Dimension

相关文章

  • 提示十六

    今天来看: 在公共类中使用访问方法而不是公共属性。 如果不更改API,则无法更改其表示形式,无法强制执行不变量,并...

  • 提示26Shell游戏

    今天继续学习提示二十六有关Shell游戏的内容,先看提示: 提示二十六:发挥 Shell 命令的威力。 作者通过木...

  • 温馨提示( 十六)

    1、所有的社交软件玩到最后,都是一个大写的孤单。 2、儿时,笑容是与生俱来的情绪;后来,笑容是不为人知的面具。 3...

  • 提示三十六

    提示三十六:使用 EnumSet 替代位属性。 EnumSet继承了AbstractSet并且实现了Cloneab...

  • 提示二十六

    今天来看提示二十六:不要使用原始类型。 一个类或接口,它的声明有一个或多个类型参数,被称之为泛型类或泛型接口。 每...

  • 提示44-48 解耦

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

  • 提示36

    今天学习有关务实的内容,先看提示: 提示三十六:你无法写出完美的软件。 作者开头就抛出了提示的内容,没有人写出过完...

  • 提示五十六 打破时域耦合

    今天学习有关并发的内容,先看提示: 提示56 通过分析工作流来提高并发性。 作者先从时域耦合开始讲起,考虑对时间依...

  • 小说《茫茫天涯路》引子

    作者:陈钟强 内容提示: 十六年前,在太子河畔,他的弟弟被人贩子拐走了,当时弟弟只有4岁。 十六年后,在一个大雪纷...

  • 原子重组

    二十六 欧耶正一筹莫展之际,脑中的游戏界面突然冒出了一个选项“游戏提示”。 抱着试试看的态度,他进入了“游戏提示”...

网友评论

      本文标题:提示十六

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