effective java 读书笔记
来源:互联网 发布:国内外治疗癌症知乎 编辑:程序博客网 时间:2024/06/18 12:54
创建和销毁对象
1.静态工厂方法替代构造器:
构造器的缺点在于,1.对于上层调用者,有时候不知道该使用哪个构造器,同时也可能不太清楚构造器内参数的具体含义,因为构造器没有名称
2.每次调用都会产生一个新的对象,会造成资源浪费
3.返回类型只能是当前类型,不能体现多态
使用工厂方法:
1.可以使用比较具体的名字来让上层调用者知道该这个工厂方法产生的构造器到底是什么种类。
2.可以通过单例模式等,使产生对象的数量可以控制
3.可以返回原返回类型的任意一个子类(体现了多态)
缺点:
要求类必须有受保护或者共有的构造器 负责不能实例化
静态方法和静态工厂没有差别,在java中没有办法体现和分别那些是静态工厂那些是静态方法
2.遇到多个构造器参数时考虑使用构建器
当参数过多的时候使用重叠构造器会使代码难以维护(当参数较少时可以使用),javabean模式存在风险,javabean存在不一致性,造成程序中一些难以发现的bug
Builder模式 在该类内部构造一个实体builder 将属性放置在builder内 ,然后定义赋值方法(返回builder对象),调用的形式为
classA.Builder(2,5).filedA(4).fieldB("张三");
0 0
- 《Effective Java》读书笔记之一
- 《Effective Java》读书笔记
- Effective Java读书笔记
- Effective Java 读书笔记
- 《Effective Java》读书笔记
- 《Effective Java》读书笔记之一
- Effective java 读书笔记
- 《Effective in java》 读书笔记
- Effective Java读书笔记
- Effective java 读书笔记
- Effective Java读书笔记
- Effective Java读书笔记一
- Effective Java读书笔记二
- Effective Java读书笔记三
- Effective Java读书笔记四
- Effective Java读书笔记五
- Effective Java读书笔记六
- Effective Java读书笔记七
- eclipse调试java程序的九个技巧
- layoutSubviews在以下情况下会被调用,当需要改变子视图的frame时就需要用到了,我在使用的时候,Masonry改变子视图的布局居然不起用,用frame就可以了
- Kafka配置说明
- 这15个好习惯,让您成为一名成功的程序员!
- oracle分页
- effective java 读书笔记
- HTML笔记【3】
- 损失函数(loss function)
- iOS 集成百度语音小指南
- LeetCode笔记:462. Minimum Moves to Equal Array Elements II
- Gorm学习(一)
- Android微信开放平台,申请移动应用 获取应用签名的方法
- Android中的视图动画
- android xml转Json