Avatar notebook default
15篇文章 · 7999字 · 1人关注
  • 15.使类的可变性最小化

    不可变的类只是实例不能被修改的类。每个实例中包含订单所有信息都必须在创建该实例的时候就提供,并在对象的整个生命周期内固定不变。不可变的类有Str...

  • Resize,w 360,h 240
    14.在共有类中使用访问方法而非公有域

    这样: 而不要这样做: public class MyObject{ public intfiled01; } 总结:公有类永远都不应该暴露可...

  • 13.使类和成员的可访问性最小化

    1. 为什么要使类和成员的可访问性最小化? 解除模块的耦合度、实现独立开发、系统更可维护,更健壮。加快系统开发的速度,模块可并行开发。减轻了维护...

  • Resize,w 360,h 240
    12.考虑实现Comparable接口

    1. Comparable接口介绍 Comparable这个接口是用来实现对象排序的。假设有这么一个类: 然后我们可以这样对他进行排序: 现在对...

  • Resize,w 360,h 240
    11.谨慎地覆盖clone

    一、不可变对象clone(没意义) 二、不可变对象clone 三、散列表深度clone 四、克隆复杂对象的最后一种办法 五、clone方法的替代...

  • 10.始终要覆盖toString

    虽然Object提供了toString的实现,但它返回的是类名+@+散列码,不是我们想看到的,强烈建议重写toString方法 如果toStri...

  • Resize,w 360,h 240
    9.覆盖equals时总要覆盖hashcode

    不这样就违反Object.hashCode的通用约定,导致该类无法结合所有基于散列的集合(HashMap、HashSet和Hashtable)一...

  • Resize,w 360,h 240
    8.覆盖equals时请遵守通用约定

    一、不覆盖equals ==是物理相等 equals是逻辑相等 Object类的equals方法的实现:物理相等的话就逻辑相等。 不覆盖equa...

  • 7.避免使用终结方法

    对象不可达时,会由垃圾回收器来回收与该对象相关联的内存资源;其他内存资源,一般由try-finally来完成。 1.除非是作为安全网或者是为了终...

文集作者