LomBok

2020-06-16  本文已影响0人  名字是乱打的

我只取我需要关注的,或者说我要打笔记的点,灵感动机来自于刚到公司接触的项目让我初识LomBok.LomBok官方文档可以点击这里

一.LomBok是啥?

我认为lombok的主要作用有两点,1.简化代码 2.提高代码可读性
表层原因是消除千篇一律的无用代码,至于哪些代码,可以往下看.

二 .LomBok怎么用,哪里可以用?

先看怎么用再看为什么.

LomBok用到的注解👇


害~上面的注解,咱也就用到了几个常用的@data @AllArgsConstructor

看了咋用的后,再看为什么

Lombok本质上就是一个实现了“JSR 269 API”的程序。在使用javac的过程中,它产生作用的具体流程如下:

    1. javac对源代码进行分析,生成了一棵抽象语法树(AST)
    1. 运行过程中调用实现了“JSR 269 API”的Lombok程序
    1. 此时Lombok就对第一步骤得到的AST进行处理,找到@Data注解所在类对应的>语法树(AST),然后修改该语法树(AST),增加getter和setter方法定义的相应树节点
    1. javac使用修改后的抽象语法树(AST)生成字节码文件,即给class增加新的节点(代码块)

看起来有点像大学时候学的编译原理,简单说就是编译时候,响应的注解相当于一个标识,lombok程序会启动并对之前的源码种的标识进行处理生成一些支撑代码(我们之前省略的大量代码),运行的时候省略的代码相当于已经补上了,那么自然跟我们之前全部写了效果等同.

上一篇 下一篇

猜你喜欢

热点阅读