Java碎碎念


抽象类的作用

降低接口实现类对接口实现过程的难度,将接口中不需要使用抽象方法交给抽象类进行完成,这样接口实现类只需对接口需要的方法进行重写

编程时每一个操作都有理论依据

为什么要问源码?

  1. 方便调试BUG
  2. 看懂源码,方便扩展
  3. 方便做二次开发或者自己项目接口开发
  4. 提升内功,学习别人的设计思想

spring源码:

  1. ioc创建过程
  2. bean实例化过程
  3. 循环依赖
  4. AOP
  5. 事件发布监听

函数式编程

函数式编程(FP)的意义所在。通过合并现有代码来生成新功能而不是从头开始编写所有内容,我们可以更快地获得更可靠的代码。
OO(object oriented,面向对象)是抽象数据,FP(functional programming,函数式编程)是抽象行为。

Stream的使用建议

  • 简单的迭代逻辑,可以直接使用 iterator,对于有多步处理的迭代逻辑,可以使用 stream,损失一点几乎没有的效率,换来代码的高可读性是值得的;
  • 单核 cpu 环境,不推荐使用 parallel stream,在多核 cpu 且有大数据量的条件下,推荐使用 paralle stream;
  • stream 中含有装箱类型,在进行中间操作之前,最好转成对应的数值流,减少由于频繁的拆箱、装箱造成的性能损失

https://xie.infoq.cn/article/6521ea3ae8a36f2bdaece6e61

IO流装饰器模式


文章作者: 彭峰
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 彭峰 !
  目录