gpt4 book ai didi

java - 为什么双括号初始化要求 SerialVersionUID?

转载 作者:行者123 更新时间:2023-12-02 13:25:13 25 4
gpt4 key购买 nike

public static List<Long> abc = new ArrayList<Long>(){{ //Asks for SerialVersionUID
abc.add(5L);
abc.add(7L);
}};

public static List<Long> abc = new ArrayList<Long>();//Does not need SerialVersionUID
static{
abc.add(5L);
abc.add(7L);
}

最佳答案

在第二个示例中,您实例化一个已经定义了 serialVersionUID 的类(即 ArrayList)。

在第一个示例中,您定义了 ArrayList 的匿名子类,并且您的子类需要定义自己的 serialVersionUID。双括号初始化实际上定义了一个匿名类,这一点并不总是显而易见的。

关于java - 为什么双括号初始化要求 SerialVersionUID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1926641/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com