美文网首页
Effective Java - 通过接口引用对象

Effective Java - 通过接口引用对象

作者: DZQANN | 来源:发表于2022-08-18 22:41 被阅读0次

    第63条 注意字符串拼接的性能

    1. 重复地使用字符串拼接操作符来拼接n个字符串,需要n的平方级的时间
    2. 为了获得可以接受的性能,请使用StringBuilder代替String

    思考

    1. 如果是循环拼接字符串的话,需要使用StringBuilder。如果是O(1),及时使用了StringBuilder,IntelliJ也是会推荐直接使用"+"拼接的

    第64条 通过接口引用对象

    1. 如果有合适的接口类型存在,那么对于参数、返回值、变量和域来说,就都应该使用接口类型进行声明

      // Good - uses interface as type
      Set<Son> sonSet = new LinkedHashSet<>();
      
      // Bad - uses class as type!
      LinkedHashSet<Son> sonSet = new LinkedHashSet<>();
      
    1. 如果没有合适的接口存在,完全可以使用类而不是接口来引用对象

    2. 如果没有合适的接口,则使用类层次接口中提供了必要功能的最基础的类

    思考

    1. 使用接口,如果替换了接口的实现,需要注意是否依赖了原接口的特性。比如从LinkedHashMap变为了HashMap之后,需要检查逻辑是否依赖了顺序

    相关文章

      网友评论

          本文标题:Effective Java - 通过接口引用对象

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