日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術(shù)文章
文章詳情頁

Java中Lombok @Value注解導(dǎo)致的variable not been initialized問題

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

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

Java中Lombok @Value注解導(dǎo)致的variable not been initialized問題

該類已經(jīng)存在一個構(gòu)造函數(shù),為了不破壞該類原來的使用方式,于是重新寫了一個構(gòu)造方法,之前的構(gòu)造函數(shù)未改動。 該類被Lombok的@Value注解修飾解決 報錯信息顯示,變量未被初始化。于是主要排查是否有被初始化。 在重寫的構(gòu)造方法中,我已經(jīng)對該變量進行了初始化。 不明所以,開始找不同,這個類中,唯一不熟悉的就是@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.b3g6.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),見名知意,這是一個為字段設(shè)置默認屬性的注解,注解的屬性值中,標注了是否設(shè)置實例字段為final,訪問級別設(shè)置為private。

/** * Adds modifiers to each field in the type with this annotation. *<p>* Complete documentation is found at<a href='http://www.b3g6.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注解修飾的實例字段都會被添加一個與屬性值對應(yīng)的修飾符。

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

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

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實例變量必須在聲明它的類的每個構(gòu)造函數(shù)中確定賦值;同樣,空白final靜態(tài)變量必須在聲明它的類的靜態(tài)初始化器中明確賦值;否則,以上兩種情況下都會發(fā)生編譯錯誤。

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

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

標簽: Java
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
欧美久久一区二区三区| 午夜精品影视国产一区在线麻豆| 日韩毛片视频| 国产精品一二| 国产一区日韩一区| 国产精品s色| 日韩一区精品字幕| 卡一卡二国产精品| 国产美女精品视频免费播放软件| 日韩精品永久网址| 精品在线网站观看| 日韩在线观看一区二区| 亚洲电影在线一区二区三区| 国产成人久久精品麻豆二区 | 麻豆91在线播放| 日产欧产美韩系列久久99| 99视频+国产日韩欧美| 日韩精品影视| 国产一区二区精品福利地址| 国产精品久久久久久av公交车| 天海翼精品一区二区三区| 午夜欧美精品| 一区二区亚洲视频| 亚洲精一区二区三区| 亚洲精品四区| 国产精品一区二区99| 久久av日韩| 国产一区二区三区四区大秀| 精品久久久网| 成年男女免费视频网站不卡| 日韩国产欧美一区二区| 亚洲高清av| 日韩激情中文字幕| 日产欧产美韩系列久久99| 日本色综合中文字幕| 国产精品毛片aⅴ一区二区三区| 国产激情久久| 久久精品电影| 亚洲精品精选| 精品国产91| 99国产精品久久久久久久| 亚洲免费福利一区| 精品国产一区二区三区av片| 另类专区亚洲| 影音国产精品| 国产调教一区二区三区| sm捆绑调教国产免费网站在线观看 | 国产网站在线| 欧美网站在线| 国产三级一区| 久久国产小视频| 国产日韩一区二区三区在线播放| 一本大道色婷婷在线| 婷婷亚洲成人| 久久久久99| 国产日产精品_国产精品毛片| 日韩免费在线| 久久精品999| 怡红院精品视频在线观看极品| 国产精品一级在线观看| 免费日韩av片| 精品丝袜久久| 日本天堂一区| 男女精品网站| 性一交一乱一区二区洋洋av| 欧美1区2区3区| 日韩亚洲精品在线| 欧美日韩国产探花| 美女久久网站| 人人爱人人干婷婷丁香亚洲| 国产精品嫩模av在线| 久久99青青| 国模大尺度视频一区二区| 国产在线|日韩| 午夜国产精品视频| 亚洲精品中文字幕99999| 欧美综合二区| 青草av.久久免费一区| 久久亚洲精品中文字幕| 日韩电影免费在线观看| 亚洲在线成人| 国产精品久久久久久av公交车| 国产一区二区三区四区| 亚洲国产一区二区在线观看| 天堂va在线高清一区| 精品欠久久久中文字幕加勒比| 久久人人99| 91精品国产一区二区在线观看 | 精品欧美一区二区三区在线观看| 日韩中文字幕区一区有砖一区 | 亚洲激情中文| 久久伊人国产| 亚洲制服一区| 黄毛片在线观看| 久久国产精品亚洲77777| 国产日韩高清一区二区三区在线| 日韩毛片视频| 91精品国产经典在线观看| 日韩中文在线电影| 日韩激情中文字幕| 91精品国产调教在线观看| 欧美在线91| 中文一区在线| 麻豆精品蜜桃视频网站| 99国产一区| 日韩精品永久网址| 国产欧美日韩在线一区二区| 国产一区白浆| 久久精品官网| 国产一区二区三区四区五区传媒| 亚洲精品乱码日韩| 国产亚洲午夜| 亚洲成人精品| 电影91久久久| 国产亚洲观看| 日本精品在线播放| 亚洲欧美高清| 国产精品88久久久久久| 国产精品一区亚洲| 亚洲三级观看| 中文字幕成人| 久久亚洲影院| 久久国产成人| 免费看精品久久片| 亚洲欧美日韩国产一区| 好吊一区二区三区| 黄色欧美日韩| 蜜桃av一区| 四虎精品永久免费| 中文字幕中文字幕精品| 日本va欧美va瓶| 欧美日韩亚洲国产精品| 国产精品网站在线看| 国产乱人伦丫前精品视频 | 国产一区久久| 亚洲免费黄色| 老鸭窝亚洲一区二区三区| 免费视频最近日韩| 日韩中文一区二区| 91精品美女| 成人在线黄色| 亚洲精品在线影院| 欧美aa国产视频| 亚洲性视频在线| 91欧美日韩在线| 鲁大师精品99久久久| 日韩综合精品| 亚洲精品综合| 久久久国产精品入口麻豆| 91一区二区三区四区| 婷婷色综合网| 国产亚洲人成a在线v网站| 日韩a一区二区| 香蕉久久国产| 国产精品亚洲欧美日韩一区在线| 丁香婷婷久久| 视频一区在线播放| 麻豆国产精品视频| 亚洲欧洲午夜| 日韩和欧美一区二区三区| 国产极品久久久久久久久波多结野| 久久只有精品| 九九综合在线| 美女久久99| 免费精品视频| а√天堂8资源在线| 亚洲伊人精品酒店| 国产精品久久久久av电视剧| 日本欧洲一区二区| yellow在线观看网址| 91精品尤物| 石原莉奈在线亚洲三区| 欧美日韩在线观看首页| 欧美日韩伊人| 欧洲激情综合| 国产精品99在线观看| 日韩成人一级| 国产精品女主播一区二区三区| 黄色网一区二区| 国产精品欧美大片| 日韩欧美中文字幕电影| 亚洲欧美日韩专区| 欧美~级网站不卡| 欧美天堂视频| 精品一区二区三区中文字幕视频| 日本高清久久| 最新亚洲国产| 蜜臀va亚洲va欧美va天堂| 亚洲午夜视频| 欧洲亚洲一区二区三区| 麻豆精品在线观看| 国产精品大片免费观看| 欧美日韩一区自拍| 欧美色综合网| 久久狠狠久久| 国产欧美一区| 免费日韩成人| 日韩a一区二区| se01亚洲视频| 不卡在线一区二区|