Effective Java读书笔记(上)

发布时间:2023-01-10 20:48:48

EffectiveJava第一章引言第二章创建/销毁对象1.用静态工厂方法代替构造器2.类提供一个共有的静态工厂方法,返回类的实例。3.注意:与工厂模式不同,并不直接对应。4.静态工厂方法比起构造器的优势a它们有名称i.如果构造器的参数不能正确描述正被返回的对象,具有适当名称的静态方法更容易使用。ii.当一个类需要多个带有相同签名的构造器时,就可以用静态工厂代替构造器例子:BigInterger.probablePrime(b不必每次调用它们的时候都创建新的对象:单件模式或者享元模式。
i.静态工厂方法能为重复的调用返回相同的类,有助于类控制在哪个时间段存在哪些实例。被称为实例受控的类c他们可以返回原返回类型的的任何子类型的实例i.API可以返回对象,又不会使对象的类变成共有的,适合基于接口的框架。ii.被返回的对象由相关的借口精确指定。iii.共有的静态工厂方法所返回的类不仅可以是非公有的,还可以随着每次调用发生变化,这取决于工厂方法参数值。iv.静态工厂方法返回的对象所属的类,在编写该静态方法时可以不必存在(留给开发者实现)d创建参数化实例的时候,它们使代码更为简单i.例子:Map>m=newMap>(;Map>m=HashMap.newInstance(;//减少一次参数5.静态工厂方法的缺点a类如果不含公有或者受保护的构造器,就不能被子类化。

Effective Java读书笔记(上)

相关推荐