Effective JAVA 01

Effective java之创建和销毁对象
名词解释

构造器(Constructor ):构造器作为一种方法,使用 new 关键字实现对象的创建。负责类中成员变量(域)的初始化。 就是类中的构造函数。最大的用处就是在创建对象时执行初始化。

静态工厂方法(Static factory method):用一个静态方法来对外提供自身实例的方法,例如,Boolean.FALSE。

创建对象方法

1、静态工厂方法代替构造器
代码:
//使用构造器
Boolean b1 = new Boolean(true);
//使用静态工厂方法
Boolean b2 = Boolean.valueOf(true);
对比:
1)构造器
一个类只能带有一个指定签名的构造器。要实现多个功能,就需要创建多个类。
它容易受到参数的形象,例如参数类型顺序是不能改变的,不便于用户长久使用。
2) 静态工厂
使用条件:当一个类它需要多个带有相同签名的构造器。
取不同的名字以表示不同的构造方式。
可以根据功能来取名字,对于代码的编写和阅读都能够更清晰。
3)优势

     有独立的名称,如valueOf

     不需要在每次调用时都创建一个新的对象
     [Java的单例(Singleton)](https://www.jianshu.com/p/eb30a388c5fc)
     它们可以返回原返回类型的任何子类型的对象

2、构建器来处理多个构造器参数

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

4、通过私有构造器强化不可实例化的能力

5、避免创建不必要的对象

6、消除过期的对象引用

7、避免使用终结方法

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章