成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術文章
文章詳情頁

Java中Lombok @Value注解導致的variable not been initialized問題

瀏覽:145日期:2023-02-07 08:46:59
目錄背景解決背景

想要修改一個POJO類,在其中增加一個字段,但是增加以后就開始報錯:

Java中Lombok @Value注解導致的variable not been initialized問題

該類已經存在一個構造函數,為了不破壞該類原來的使用方式,于是重新寫了一個構造方法,之前的構造函數未改動。 該類被Lombok的@Value注解修飾解決 報錯信息顯示,變量未被初始化。于是主要排查是否有被初始化。 在重寫的構造方法中,我已經對該變量進行了初始化。 不明所以,開始找不同,這個類中,唯一不熟悉的就是@Value注解,于是查看注解中的注釋:

/** * Generates a lot of code which fits with a class that is a representation of an immutable entity. *<p>* Equivalent to {@code@Getter @FieldDefaults(makeFinal=true, level=AccessLevel.PRIVATE) @AllArgsConstructor @ToString @EqualsAndHashCode}. *<p>* Complete documentation is found at<a href='http://www.piao2010.com/bcjs/<https://projectlombok.org/features/Value>' rel='external nofollow' >the project lombok features page for&#64;Value</a>. * *@seelombok.Getter*@seelombok.experimental.FieldDefaults*@seelombok.AllArgsConstructor*@seelombok.ToString*@seelombok.EqualsAndHashCode*@seelombok.Data*/@Target(ElementType.TYPE)@Retention(RetentionPolicy.SOURCE)public @interface Value { /** * If you specify a static constructor name, then the generated constructor will be private, and * instead a static factory method is created that other classes can use to create instances. * We suggest the name: 'of', like so: * * <pre> * public @Value(staticConstructor = 'of') class Point { final int x, y; } * </pre> * * Default: No static constructor, instead the normal constructor is public. * * @return Name of static ’constructor’ method to generate (blank = generate a normal constructor). */ String staticConstructor() default '';}

這個注解的作用是為一個不可變的實體類生成一系列與之匹配的代碼。效果等同于以下注解的組合:@Getter @FieldDefaults(makeFinal=true, level=AccessLevel.PRIVATE) @AllArgsConstructor @ToString @EqualsAndHashCode。

這其中有一個注解比較特殊,@FieldDefaults(makeFinal=true, level=AccessLevel.PRIVATE),見名知意,這是一個為字段設置默認屬性的注解,注解的屬性值中,標注了是否設置實例字段為final,訪問級別設置為private。

/** * Adds modifiers to each field in the type with this annotation. *<p>* Complete documentation is found at<a href='http://www.piao2010.com/bcjs/<https://projectlombok.org/features/experimental/FieldDefaults>' rel='external nofollow' >the project lombok features page for&#64;FieldDefaults</a>. *<p>* If {@codemakeFinal} is {@codetrue}, then each (instance) field that is not annotated with {@code@NonFinal} will have the {@codefinal} modifier added. *<p>* If {@codelevel} is set, then each (instance) field that is package private (i.e. no access modifier) and does not have the {@code@PackagePrivate} annotation will * have the appropriate access level modifier added. */@Target(ElementType.TYPE)@Retention(RetentionPolicy.SOURCE)public @interface FieldDefaults { AccessLevel level() default AccessLevel.NONE; boolean makeFinal() default false;}

若makeFinal是true,則每個實例字段(被@NonFinal注解修飾的除外)都會被final修飾符修飾。若level屬性有值,那么每個包私有訪問的(即沒有訪問修飾符修飾)和沒有被@PackagePrivate注解修飾的實例字段都會被添加一個與屬性值對應的修飾符。

也就是說,@Value標記了此POJO類為不可能變的類,其所有沒有被@NonFinal注解修飾的成員變量,都會被final修飾

事情到了這里,還是不知道問題在哪里(Java基礎差)。繼續找解決辦法。

Google搜索找到此問答:

Lombok @Wither, @Value, @NoArgsConstructor, @AllArgsConstructor do not work together

回答中有一段對于Java final的描述:

A final variable can only be initialized once, either via an initializer or an assignment statement. It does not need to be initialized at the point of declaration: this is called a 'blank final' variable. A blank final instance variable of a class must be definitely assigned in every constructor of the class in which it is declared; similarly, a blank final static variable must be definitely assigned in a static initializer of the class in which it is declared; otherwise, a compile-time error occurs in both cases.

翻譯如下:一個final修飾的變量只能通過初始化器或賦值語句初始化一次。它不需要在聲明處初始化:這被稱為“空白final”變量。類的空白final實例變量必須在聲明它的類的每個構造函數中確定賦值;同樣,空白final靜態變量必須在聲明它的類的靜態初始化器中明確賦值;否則,以上兩種情況下都會發生編譯錯誤。

真相大白,原因是在原來的構造器中沒有對新加入的字段進行初始化。至此,問題解決。

到此這篇關于Java中Lombok @Value注解導致的variable not been initialized問題的文章就介紹到這了,更多相關Java Lombok @Value注解導致問題內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Java
相關文章:
成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久
国产精品一二三| 国产精品一区三区| 另类的小说在线视频另类成人小视频在线| 在线看无码的免费网站| 国产亚洲精品aa午夜观看| 国产精品羞羞答答xxdd| 欧美日韩一区二区三区高清| 免费在线观看一区| 乱人伦精品视频在线观看| 日韩欧美高清一区| 国产麻豆欧美日韩一区| 欧美日韩大陆一区二区| 日产精品久久久久久久性色| 鲁大师影院一区二区三区| 一二三区精品福利视频| 宅男噜噜噜66国产日韩在线观看| 欧美国产成人精品| 欧美不卡一卡二卡免费版| 欧美xxxx老人做受| 本田岬高潮一区二区三区| 欧美精品免费视频| 久久激情综合网| 日本道色综合久久| 亚洲影音先锋| 水蜜桃久久夜色精品一区的特点| 一区二区高清| 亚洲一区二区三区四区在线免费观看| 国产农村妇女精品一区二区| 天天综合日日夜夜精品| 91九色最新地址| 蜜桃视频在线观看一区| 欧美在线观看一二区| 美日韩一区二区三区| 在线免费观看不卡av| 激情欧美一区二区三区在线观看| 欧美日韩精品一区二区三区 | 亚洲激情午夜| 中文字幕中文字幕在线一区| 亚洲福利电影| 亚洲综合免费观看高清在线观看| 午夜在线视频一区二区区别| 日韩激情一二三区| 欧美日本在线观看| 高清不卡一区二区在线| 久久综合99re88久久爱| 色综合天天天天做夜夜夜夜做| 久久精品视频一区二区| 狠狠色综合色区| 亚洲国产日韩一区二区| 欧美视频自拍偷拍| 不卡的av电影在线观看| 国产欧美日韩视频在线观看| 一区免费视频| 图片区小说区区亚洲影院| 欧美午夜片在线观看| 成人一级黄色片| 首页亚洲欧美制服丝腿| 亚洲区第一页| 亚洲国产精品久久久久婷婷884 | 国产精品一卡二卡| 国产亚洲一二三区| 樱桃成人精品视频在线播放| 亚洲一区二区高清| 在线观看一区日韩| 成人手机在线视频| 国产精品高潮久久久久无| 在线视频一区观看| 另类小说综合欧美亚洲| 日韩欧美在线观看一区二区三区| 欧美 日韩 国产一区二区在线视频| 日韩一区在线看| 色系网站成人免费| 成人午夜电影小说| 亚洲人成网站精品片在线观看 | 国产一区二区三区综合| 国产午夜亚洲精品理论片色戒| 99亚洲视频| 久草在线在线精品观看| 久久美女高清视频| 亚洲乱亚洲高清| 热久久免费视频| 精品伦理精品一区| 国产亚洲欧美一区二区| 激情综合五月天| 日本一区二区动态图| 美女亚洲精品| 豆国产96在线|亚洲| 亚洲精品欧美激情| 欧美日韩精品一区视频| 国产精品九九| 偷偷要91色婷婷| 欧美成人猛片aaaaaaa| 亚洲精品一区二区三区蜜桃久| 丝袜亚洲精品中文字幕一区| www国产成人免费观看视频 深夜成人网| 99国内精品| 国内外成人在线| 国产精品美女一区二区三区| 一本在线高清不卡dvd| 成人黄色小视频| 一区二区在线观看视频| 欧美人动与zoxxxx乱| 韩日视频一区| 狠狠久久亚洲欧美| 中文字幕在线一区二区三区| 欧美一a一片一级一片| 欧美喷水视频| 久久福利资源站| 国产精品久久久久三级| 欧美色视频在线| 韩国欧美一区| 国产美女精品一区二区三区| 亚洲美女电影在线| 欧美电影免费提供在线观看| 性高湖久久久久久久久| 91在线观看下载| 日韩经典一区二区| 国产精品福利一区二区| 67194成人在线观看| 在线视频精品| av在线不卡电影| 美女在线一区二区| 中文字幕亚洲综合久久菠萝蜜| 日本精品裸体写真集在线观看| 国产精品豆花视频| 国产老女人精品毛片久久| 亚洲综合另类小说| 欧美v国产在线一区二区三区| 性久久久久久| 欧美日本亚洲| 国产经典欧美精品| 亚洲一区二区不卡免费| 欧美国产综合一区二区| 欧美一区二区三区日韩视频| 免费看的黄色欧美网站| 91美女片黄在线观看91美女| 国产在线不卡视频| 亚洲成人一区二区在线观看| 国产亚洲精品bt天堂精选| 欧美日韩成人激情| 久久亚洲高清| 激情欧美丁香| 91网页版在线| 国产成人av在线影院| 麻豆精品久久精品色综合| 亚洲图片自拍偷拍| 国产精品另类一区| 337p日本欧洲亚洲大胆精品| 欧美高清视频不卡网| 久久久综合网| 国产亚洲成人一区| 一区免费在线| 欧美另类女人| jiyouzz国产精品久久| 激情欧美一区二区三区在线观看| 亚洲国产成人av好男人在线观看| 国产精品欧美极品| 欧美精品一区二区三区在线 | 激情丁香综合| 欧美成人有码| 99久久国产综合精品女不卡| 国产传媒久久文化传媒| 久久99国产精品久久99| 日本在线观看不卡视频| 亚洲电影视频在线| 亚洲精品乱码久久久久久日本蜜臀| 精品日本一线二线三线不卡| 欧美精品丝袜中出| 欧美日韩国产精选| 色婷婷综合久色| 美日韩精品视频| 国产美女精品| 香蕉精品999视频一区二区| 国产精品一区免费观看| 亚洲国产一区二区三区a毛片| 欧美日韩一区二区三区在线观看免 | 老司机一区二区三区| 日韩亚洲在线| 一区精品久久| 影音先锋一区| 亚洲黄色成人| 在线免费日韩片| 欧美日韩理论| 欧美日韩在线高清| 91浏览器打开| 欧美激情91| 黄色欧美成人| 亚洲美女网站| 国产精品亚洲综合久久| 国产精品一区在线播放| 蜜桃视频一区| 美女主播一区| 久久亚洲一区| 91电影在线观看| 欧美人妖巨大在线| 日韩视频123| 欧美一区二区三区白人| 欧美一级日韩免费不卡| 欧美va亚洲va在线观看蝴蝶网| 精品国产麻豆免费人成网站|