作者:cipher
www.ciphermagic.cn/java8-builder.html


程序员经常会遇到灵魂拷问:你有对象吗?

没有,但我可以 new 一个!


没问题,老铁!但如果对象的属性太多,咋办?


GirlFriend 


  


GirlFriend 是很美,但写起来也太麻烦了吧。

说说缺点:实例化和设置属性分开,不好维护;变量名重复写。

莫慌,看法宝~

这里不再介绍其他 Builder 实现方式,直接祭出最实用的通用Builder:

适用于所有类,不需要改造原来类,不需要 lombok 插件支持。

先看看使用姿势:


  


看到了吗!实例化和属性设置在同一条语句执行,链式操作,一路点点点,清爽!

Talk is cheap, show me the code:



这个示例最多支持三个参数的设置属性方法,也完全够用了。如果要扩展也很容易,依葫芦画瓢,添加多个参数的Consumer。

快用你的 Builder 建个对象吧~


你还在new对象吗?Java8通用Builder了解一下?-LMLPHP







       



      



     



    

本文分享自微信公众号 - 浪尖聊大数据(bigdatatip)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

03-14 13:19