读《Effective Java》笔记
形而上 Lv4

本书作者Joshua Bloch曾是Sun Microsystems的Java架构师,现在是Google的工程师。

这是一本任何想要提高技能和编写更好代码的Java开发人员的必读之书。里面全是干货。

“我很希望我10年前就能拥有这本书。有人可能认为我不需要任何Java方面的书籍,但是我需要这本书。”——Java之父James Gosling

第一章 创建和销毁对象

1. 用静态工厂方法代替构造器

相对于构造器的优缺点:

优点:
1.名称更容易理解。
2.可以使用缓存。例如单例模式,享元模式,静态工厂方法。
3.可以返回子类。
4.类可以不存在。例如jdbc驱动
缺点:
1.不能子类化。如果没有公共构造函数就不能被实例化。
2.不容易识别。类里面有多少工厂方法文档不会标注,不容易识别。

常用名称:

1
2
3
4
5
6
7
8
9
10
11
12
//一般有可能使用缓存,比如饿汉单例
getInstance();
//一般是新的对象
newInstance();
//Date.from(instant);
from();
//
of();
//
valueOf();
//
createXxx();

2. 遇到多个构造器参数时要考虑使用构建器

使用建造者模式

3. 用私有构造器或者枚举类型强化Singleton属性

4. 通过私有构造器强化不可实例化能

  • 本文标题:读《Effective Java》笔记
  • 本文作者:形而上
  • 创建时间:2021-12-01 05:56:00
  • 本文链接:https://deepter.gitee.io/2021_12_01_effective_java/
  • 版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!