zoukankan      html  css  js  c++  java
  • Effective Java 读书笔记第三章

    第三章 对于所有通用的方法

          主要讲的是对Object类的非final方法(equals,hashCode,toString,clone和finalize)覆盖的一些规则

    1.覆盖equals时请遵守通用约定(item 8)

      1.1 这一个item讲了一些比较抽象的定义,比如自反性,对称性等。不太好理解,感觉执行起来也有一定难度。因为java提供的api中也有几个是违反了这些原则的。我想可能是类似于淘宝之类的大公司才会很严格的执行?没看不知道覆盖equals这么难。难怪文章开头说为了避免这些问题,就不要去覆盖equals。但是,对于一些逻辑相等(logical equality)的比较还是得覆盖的。

      1.2 单例模式的类不用覆盖equals方法

      1.3 这里提到了item16的要复合优先于继承,让equals覆盖不太复杂。比如ColorPoint不是继承Point,而是让Point做为ColorPoint的一个私有域(即私有成员变量),以及一个公有的视图(View,我觉得就是我们平时写的getter方法)

  • 相关阅读:
    CodeForces 385D: Bear and Floodlight
    UVA
    SGU 495: Kids and Prizes
    CodeForces 148D: Bag of mice
    HDU 4405: Aeroplane chess
    HDU 4336: Card Collector
    UVA
    POJ 2577: Interpreter
    伪类选择器 伪原色选择器 选择器的优先级
    复习html CSS选择器 组合选择器和属性选择器
  • 原文地址:https://www.cnblogs.com/baron89/p/2849313.html
Copyright © 2011-2022 走看看